2013-06-09 3 views
1

Я пытаюсь настроить работу Дженкинс так что основе на выбор пользователя узел/ведомый должен быть выбран.Дженкинс: Выбор ведомого на основе выбора пользователя

example : if choice = windows ->slave1 
      if choice = Linux ->slave2 

Я попытался с матрицей конфигурации я получаю сообщение об ошибке, что узлы offline.Is есть ли плагин, чтобы сделать такие выборы в Дженкинс

+0

Зачем вам эта функция? Обычно для конкретной сборки требуется определенная программная среда для установки, поэтому задача сборки должна явно нацеливаться на конкретный ведомый тег. Разрешение пользователю выбирать кажется странным для меня .... Что такое прецедент? –

+0

Привет Отметьте, что мой вариант использования - генерировать специфические для ОС сборки для тега GIT, поэтому для каждого OSTYPE сборка создается на ее выделенной машине .... – Thiyagarajan

ответ

1

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

  • линукс-сборка, добавьте этикетку Linux
  • окно-сборку: добавить этикетку окно

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

Пример:

  • система Windows, добавьте метку Windows
  • система Linux, добавить метку Linux

После этого сборок автоматически перейдет в нужную систему, и вы никогда не должны чтобы указать что-нибудь еще. Это лучше, чем вручную указывать и запускать задание.

Еще одно преимущество, если работа не удалась, вы знаете, почему .. может быть, вы выполняете работу linux всегда, но ваша работа с Windows всегда терпит неудачу, если вы комбинируете это в одном задании, вы не можете увидеть этот шаблон, но если у вас есть два отдельные сборки вы сразу увидите темное облако, формирующееся над вами.

1

Я использовал CLI Jenkins для реализации динамического выбора slave. 1) создать два рабочих места: Задание инициирует работу B 2) на работе А, вход в следующем режиме при построении/Execute Shell

if choice = windows, SERVER=slave1 
if choice = Linux, SERVER=slave2 
java -jar jenkins-cli.jar -s http_to_jenkins-server:port build buildname -p SERVER_LABEL=$SERVER -v -w --username yourusername --password yourpassword 

3) на работе B, выберите «Эта сборка спараметрирован» и добавить Строковый параметр SERVER.

Надеюсь, это поможет.

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