Skip to content

Latest commit

 

History

History
32 lines (22 loc) · 2.86 KB

README.md

File metadata and controls

32 lines (22 loc) · 2.86 KB

Домашнее задание к занятию "09.04 Jenkins"

Подготовка к выполнению

  1. Создать 2 VM: для jenkins-master и jenkins-agent.
  2. Установить jenkins при помощи playbook'a.
  3. Запустить и проверить работоспособность.
  4. Сделать первоначальную настройку.

Основная часть

  1. Сделать Freestyle Job, который будет запускать molecule test из любого вашего репозитория с ролью.
  2. Сделать Declarative Pipeline Job, который будет запускать molecule test из любого вашего репозитория с ролью.
  3. Перенести Declarative Pipeline в репозиторий в файл Jenkinsfile.
  4. Создать Multibranch Pipeline на запуск Jenkinsfile из репозитория.
  5. Создать Scripted Pipeline, наполнить его скриптом из pipeline.
  6. Внести необходимые изменения, чтобы Pipeline запускал ansible-playbook без флагов --check --diff, если не установлен параметр при запуске джобы (prod_run = True), по умолчанию параметр имеет значение False и запускает прогон с флагами --check --diff.
  7. Проверить работоспособность, исправить ошибки, исправленный Pipeline вложить в репозиторий в файл ScriptedJenkinsfile. Цель: получить собранный стек ELK в Ya.Cloud.
  8. Отправить две ссылки на репозитории в ответе: с ролью и Declarative Pipeline и c плейбукой и Scripted Pipeline.

Необязательная часть

  1. Создать скрипт на groovy, который будет собирать все Job, которые завершились хотя бы раз неуспешно. Добавить скрипт в репозиторий с решеним с названием AllJobFailure.groovy.
  2. Дополнить Scripted Pipeline таким образом, чтобы он мог сначала запустить через Ya.Cloud CLI необходимое количество инстансов, прописать их в инвентори плейбука и после этого запускать плейбук. Тем самым, мы должны по нажатию кнопки получить готовую к использованию систему.

Как оформить ДЗ?

Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.