В настоящее время мы есть ветвь "за функцию" flow
I» ве установки Дженкинс с нескольких рабочих мест
my_project-ci
: один, что опрашивать сервер GIT и делать непрерывные интегрирования по всей отрасли, начиная с origin/feature/*
- то есть построить pipeline
my_project
: испытательный запуск, как только что-то слился в мастера, тогда archive рабочей области и вызвать следующую работу
my_project-staging
: это один автоматически разворачивать в том, серверы
my_project-production
: это один срабатывает ручной
цикл выглядит следующим образом:
- местных: Клон -> GIT отделения--b функция/супер-функция -> фиксация -> локальных сборок -> мерзавец кнопочных
- Дженкинс: Дженкинс хроны для происхождения/функция/*
- местные другой DEV: обзор функции с помощью запроса тяговой
- местного: исправить -> фиксации -> локальных сборок -> нажать
- локальная другой DEV: объединить pullrequest в мастер
- Дженкинс: Дженкинс хрон происхождения/мастер
- Дженкинс: триггер my_project-постановка
- местного: проверки развертывания и запуска Вручную my_project -производство
- jenkins: развертывание в производство
Я не большой поклонник использования марионетки для развертывания, он отлично подходит для обеспечения, но он плохо управляет развертываниями (например, выполняется миграция db в кластере, удаляет один член из балансировки нагрузки, развертывает, повторно добавляет для балансировки). Посмотрите инструменты, такие как ansible, capistrano, ...
Плагин «Проверенный слияние» в Jenkins Enterprise (коммерческий), который позволяет вам фиксировать «Jenkins» (который запускает сам репозиторий Git), строит ваши изменения, и, в случае успеха, фиксирует фактический репозиторий. Пропускает марионетку. –