2013-08-08 2 views
0

Мне интересно, есть ли решение для внешней оркестровки Дженкинса или нет?Выберите подход для внешней оркестровки Дженкинса

Позвольте мне объяснить нашу установку первой:

  • Мы несколько огромных Java артефакты, которые необходимо проверять через непрерывную интеграцию трубопровода
  • A работа выполнена с возможностью захвата кода после фиксации, запускать модульные тесты и построить сам артефакт
  • B заданий (их сейчас нет), параллельно запускают различные тесты дыма, используя пустые базы данных. Они вызвали только после A job удалось. Эти рабочие места используют внешние ресурсы: облачные узлы (к которым будет применяться артефакт) и базы данных из пула БД. Работа может вернуть три статусов в Дженкинс:
    • зеленый: облако узел был получен успешно, артефакт был развернут, все тесты прошли
    • желтые: нет никаких сбоев инфраструктур обнаружено, но некоторые (или все) тестов не удались -> Blame разработчики/QA здесь
    • red: произошел еще один сбой инфраструктуры: облако испортилось, недоступна база данных, развертывание артефакта завершилось неудачно. -> Авторство DevOps здесь
  • C работы: пробег только если все B рабочих мест были зеленой. В противном случае конец потока. Загрузка артефакта в Nexus
  • D jobs: запуск функциональных тестов: несколько заданий здесь будут повторно использовать узлы облаков с B заданий, чтобы сэкономить время на развертывание. Нам все равно, какой статус они получат: зеленый, желтый или красный. Просто записывайте результаты и все. Тем не менее, здесь есть две задания, которые будут развертывать исходный артефакт из задания A в кластерной конфигурации, и если развертывание выполнено успешно, то E запуск задания независимо (т.е. если D1 сбой задания, то E1 не должен запускаться, но если задание D2 выполнено в том же рабочем процессе, чем E2).

Когда рабочий процесс завершен, вам необходимо определить статус: если произошла фатальная ошибка (любая красная сборка), чем рабочий процесс, должен иметь сбой статуса.

После завершения рабочего процесса все ресурсы должны быть освобождены: облачные узлы и базы данных.

Какой инструмент или библиотека потока операций или процесса можно использовать для реализации такой логики?

У нас есть несколько других трубопроводов с различными потоками, поэтому они должны быть гибкими.

Текущая реализация имеет очень сложную логику и несколько технических заданий, которые будут заниматься общими ресурсами. Мы хотим реализовать эту логику в одном месте: оркестр, который будет запускать задания Дженкинса извне, подавая им параметры для запуска.

ответ

2

Оформить заказ Rundeck plugin для дженкинсов.

Rundeck - инструмент для оркестровки на основе SSH.

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