и развёртывания приложения?
Есть проект на Vue. Он хранится в GitLab.
Есть сервер, на котором установлен Ansible и GitLab Runner.
Разрабы для каждой задачи по проекту создают Issue и из него создают Merge Request с новой веткой типа 1-feature-short-description. Далее они вносят изменения, тестируют их и объединяют с веткой master. В этот момент GitLab Runner должен увидеть новые изменения в ветке master, скачать их на сервер, собрать новую версию и содержимое папки build с помощью Ansible закинуть на сервер разработки. Если с файлом gitlab-ci.yml всё понятно и он кладётся в корень проекта, то вопрос куда обычно кладут сценарий (playbook) Ansible? Я видел вариант типа в самом проекте в корне создают папку .cicd и сценарий, с конфигурацией и файлами шаблона кладут туда. Правильно ли это? Как вы решаете данный вопрос?
Как по мне избыточная схема. Ansible необязателен
Привет. Конкретно у меня есть отдельный сервер "управления". TeamCity по триггеру запускает задачу на этом сервере, передавая в параметрах данные цели, после выполнения целевые машины подготовлены, туда уже тем же TeamCity заливается код, билдится и т.п.
Кто в твоей схеме занимается нумерацией версий сборок? Как много сборок хранится в один момент времени?
Нумерацией занимается сам TeamCity. Фактически храню не больше трёх, да и то исключительно для удобства (есть симлинк current - в критическом случае его натравливаю на папку с прошлым билдом). Но это исключительно редкий случай, который наверное уж год не применялся. Разработчики перед поставкой всегда актуализируют ветку previous, и тогда в случае проблем просто накатывается она и всё.
Да не за что .)
Обсуждают сегодня