mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-25 23:32:37 +03:00
Выполнение домашнего задания по теме "9.5. Teamcity"
Q/A
Задание 1
Подготовка к выполнению
- В Ya.Cloud создайте новый инстанс (4CPU4RAM) на основе образа
jetbrains/teamcity-server- Дождитесь запуска teamcity, выполните первоначальную настройку
- Создайте ещё один инстанс(2CPU4RAM) на основе образа
jetbrains/teamcity-agent. Пропишите к нему переменную окруженияSERVER_URL: "http://<teamcity_url>:8111"- Авторизуйте агент
- Сделайте fork репозитория
- Создать VM (2CPU4RAM) и запустить playbook
Форк репозитория: netology-devops-teamcity-example.
Задание 2
Основная часть
- Создайте новый проект в teamcity на основе fork
- Сделайте autodetect конфигурации
- Сохраните необходимые шаги, запустите первую сборку master'a
- Поменяйте условия сборки: если сборка по ветке
master, то должен происходитmvn clean deploy, иначеmvn clean test
- Для deploy будет необходимо загрузить settings.xml в набор конфигураций maven у teamcity, предварительно записав туда креды для подключения к nexus
- В pom.xml необходимо поменять ссылки на репозиторий и nexus
- Запустите сборку по master, убедитесь что всё прошло успешно, артефакт появился в nexus
- Мигрируйте
build configurationв репозиторий
- Создайте отдельную ветку
feature/add_replyв репозитории
git branch -C feature/add_reply && git switch feature/add_reply
- Напишите новый метод для класса Welcomer: метод должен возвращать произвольную реплику, содержащую слово
hunter- Дополните тест для нового метода на поиск слова
hunterв новой реплике- Сделайте push всех изменений в новую ветку в репозиторий
Ветка с изменениями: feature/add_reply
- Убедитесь что сборка самостоятельно запустилась, тесты прошли успешно
- Внесите изменения из произвольной ветки
feature/add_replyвmasterчерезMerge- Убедитесь, что нет собранного артефакта в сборке по ветке
master- Настройте конфигурацию так, чтобы она собирала
.jarв артефакты сборки
Конфигурация уже настроена на сборку jar. При мерже в мастер сборка запустилась автоматически,
так как изначально кофигурация проверяет все изменения всех веток в репозитории.
- Проведите повторную сборку мастера, убедитесь, что сбора прошла успешно и артефакты собраны
Поменяли pom.xml, вписав новую версию. Сборка запустилась автоматически и успешно опубликовала артефакты в nexus.
- Проверьте, что конфигурация в репозитории содержит все настройки конфигурации из teamcity
- В ответ предоставьте ссылку на репозиторий









