Как получить URL конвейерной работы в jenkins
Мы устанавливаем конвейер непрерывной доставки в Дженкинсе, используя плагин сборки конвейера.
В наших шагах по развертыванию используется запатентованный инструмент развертывания (запускаемый HTTP-запросом от jenkins), но нам необходим дополнительный шаг Jenkins для приемочных тестов развернутого проекта. Поэтому нашему инструменту развертывания нужно будет запустить последний шаг конвейера.
Настройка Дженкинса для этого очевидна:
Для последующего шага сборки, запускаемого вручную: Чтобы добавить шаг сборки, который будет ожидать запуска вручную:
- Установите флажок "Построить плагин конвейера, выполнить проект вниз по потоку"
- Введите имена нижестоящих проектов в поле "Имена нижестоящих проектов". (nb Несколько проектов можно указать с помощью запятой, например "abc, def".)
Источник: Build Pipeline Plugin
Проблема в том, что я не могу найти способ запустить эту последующую сборку через URL.
Фактически мне понадобится URL-адрес в задании развертывания, чтобы я мог отправить его в инструмент развертывания в качестве URL-адреса обратного вызова. Кто-нибудь может помочь?
2 ответа
Если я правильно понимаю, вы хотите использовать API удаленного доступа, который, насколько мне известно, не отличается от общего проекта или конвейера. Посмотрите здесь:
https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API
Отправка заданий без параметров Вам просто нужно выполнить HTTP POST для JENKINS_URL/job/JOBNAME/build? Token=TOKEN, где TOKEN установлен в конфигурации задания.
Как сказано выше @rafal S, прочитайте файл с именем списка проектов, для которого должно быть запущено задание на сборку, выполните HTTP POST для curl в JENKINS_URL/job/${JOBNAME из файла}/build? Token=TOKEN внутри цикл for, где цикл for содержит список всех имен проектов из прочитанного вами файла