2013-07-04 5 views
1

У меня есть проект maven, который использует git для контроля версий. У меня есть настройки jenkins для выполнения сборки maven для конкретных изменений моего репо. Я подумал, что я могу использовать марионетку для развертывания конкретных сборок, сделанных дженкинсами.Каков рабочий процесс при использовании git, maven, puppet и jenkins?

Есть ли какой-либо другой рабочий процесс, который я могу попробовать, используя git, maven, марионетку и jenkins?

+0

Плагин «Проверенный слияние» в Jenkins Enterprise (коммерческий), который позволяет вам фиксировать «Jenkins» (который запускает сам репозиторий Git), строит ваши изменения, и, в случае успеха, фиксирует фактический репозиторий. Пропускает марионетку. –

ответ

0

Ну все инструменты, которые вы описали, ортогональны друг другу.

типичный рабочий процесс является

Клон -> Зафиксировать -> локальная сборка -> толчок -> Дженкинс хрон -> deply

1

В настоящее время мы есть ветвь "за функцию" 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, ...

Смежные вопросы