Thanks to visit codestin.com
Credit goes to github.com

Skip to content

netgitups/netgitups_jen

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Домашнее задание к занятию «Что такое DevOps. СI/СD & GitLab» - Азимов Руслан

Инструкция по выполнению домашнего задания

  1. Сделайте fork репозитория c шаблоном решения к себе в GitHub и переименуйте его по названию или номеру занятия, например, https://github.com/netgitups/netgitups_jen.git

  2. Выполните клонирование этого репозитория к себе на ПК с помощью команды git clone.

  3. Выполните домашнее задание и заполните у себя локально этот файл README.md:

  4. После завершения работы над домашним заданием сделайте коммит git commit -m "comment" и отправьте его на GitHub git push origin.

  5. Для проверки домашнего задания в личном кабинете прикрепите и отправьте ссылку на решение в виде md-файла в вашем GitHub.

  6. Любые вопросы по выполнению заданий задавайте в чате учебной группы или в разделе «Вопросы по заданию» в личном кабинете.

Желаем успехов в выполнении домашнего задания!

Дополнительные материалы для выполнения домашних заданий из блока "Введение в DevOps"


Задание 1

Что нужно сделать:

  1. Установите себе jenkins по инструкции из лекции или любым другим способом из официальной документации. Использовать Docker в этом задании нежелательно.
  2. Установите на машину с jenkins golang.
  3. Используя свой аккаунт на GitHub, сделайте себе форк репозитория. В этом же репозитории находится дополнительный материал для выполнения ДЗ.
  4. Создайте в jenkins Freestyle Project, подключите получившийся репозиторий к нему и произведите запуск тестов и сборку проекта go test . и docker build ..

В качестве ответа пришлите скриншоты с настройками проекта и результатами выполнения сборки.

1.Задание

Задание 2

Что нужно сделать:

  1. Создайте новый проект pipeline.
  2. Перепишите сборку из задания 1 на declarative в виде кода.

В качестве ответа пришлите скриншоты с настройками проекта и результатами выполнения сборки.

2_1.Задание 2_2.Задание


Задание 3

Что нужно сделать:

  1. Установите на машину Nexus.
  2. Создайте raw-hosted репозиторий.
  3. Измените pipeline так, чтобы вместо Docker-образа собирался бинарный go-файл. Команду можно скопировать из Dockerfile.
  4. Загрузите файл в репозиторий с помощью jenkins.

В качестве ответа пришлите скриншоты с настройками проекта и результатами выполнения сборки.

3_1.Задание 3_2.Задание


Дополнительные задания* (со звёздочкой)

Их выполнение необязательное и не влияет на получение зачёта по домашнему заданию. Можете их решить, если хотите лучше разобраться в материале.


Задание 4*

Придумайте способ версионировать приложение, чтобы каждый следующий запуск сборки присваивал имени файла новую версию. Таким образом, в репозитории Nexus будет храниться история релизов.

Подсказка: используйте переменную BUILD_NUMBER.

В качестве ответа пришлите скриншоты с настройками проекта и результатами выполнения сборки.

Дополнительные материалы для выполнения домашних заданий из блока "Введение в DevOps"

Задание 1

Что нужно сделать:

Разверните GitLab локально, используя Vagrantfile и инструкцию, описанные в этом репозитории. Создайте новый проект и пустой репозиторий в нём. Зарегистрируйте gitlab-runner для этого проекта и запустите его в режиме Docker. Раннер можно регистрировать и запускать на той же виртуальной машине, на которой запущен GitLab. В качестве ответа в репозиторий шаблона с решением добавьте скриншоты с настройками раннера в проекте.

1.1_1.Задание

Задание 2

Что нужно сделать:

Запушьте репозиторий на GitLab, изменив origin. Это изучалось на занятии по Git. Создайте .gitlab-ci.yml, описав в нём все необходимые, на ваш взгляд, этапы. В качестве ответа в шаблон с решением добавьте:

файл gitlab-ci.yml для своего проекта или вставьте код в соответствующее поле в шаблоне; скриншоты с успешно собранными сборками.

2.0_1.Задание 2.1_1.Задание 2.1_2.Задание 2.1_3.Задание 2.2_1.Задание 2.2_2.Задание 2.2_3.Задание 2.2_4.Задание 2.3_1.Задание 2.4_1.Задание Дополнительные задания* (со звёздочкой) Их выполнение необязательное и не влияет на получение зачёта по домашнему заданию. Можете их решить, если хотите лучше разобраться в материале.

Задание 3*

Измените CI так, чтобы:

этап сборки запускался сразу, не дожидаясь результатов тестов; тесты запускались только при изменении файлов с расширением *.go. В качестве ответа добавьте в шаблон с решением файл gitlab-ci.yml своего проекта или вставьте код в соответсвующее поле в шаблоне.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 57.1%
  • Dockerfile 42.9%