2013-12-06 4 views
5

«Параметрированные» сборки в Jenkins немного ограничены. Что делать, если я хочу иметь параметры, связанные друг с другом?Javascript для улучшения параметризованных сборок

Например, 2 выпадающих списка. Выбор из первого управляет параметрами во втором ...

Я действительно не вижу никакого предписанного способа реализации этого, но мысль (и это кажется супер-хаки) будет заключаться в использовании javascript.

Я заметил, что вы можете ввести теги <script> в описании атрибут параметров. Может быть, место, где можно попасть в некоторые js? Также похоже, что prototype.js поставляется вместе с системой.

Итак, насколько плоха эта идея или существует «правильный» способ сделать такую ​​вещь?

+0

я отправил [вопрос о группе Google для Jenkins DEV] (https://groups.google.com/forum/#!topic/jenkinsci-dev/ KZL CBknbpHU). Похоже, на самом деле для этого нет ничего, но другой человек сказал, что интерфейс для настройки отношений параметров будет приятным. – quickshiftin

ответ

2

Заканчивать активных Choices плагин он делает именно то, что вы ищете:

jenkins-ci.org - Active Choices Plugin
github.com - Active Choices Plugin

плагин

Дженкинс интерфейс для создания и рендеринга нескольких значений варианты для параметра работы , Параметры параметров могут быть динамически , сгенерированные из сценария Groovy, и могут реагировать на изменения в другом задании параметров. Параметры значения могут отображаться как комбинированные поля, флажки, радиокнопки или богатый HTML. Active Choices стремится к , предоставляя в единственной функциональности плагина, найденной разбросанными среди нескольких ранее существующих плагинов, и некоторые уникальные возможности, которые еще не доступны .

Плагин Active Choices предоставляет дополнительные типы параметров Jenkins , которые могут отображаться как пользовательский интерфейс (UI) в формах работ.

После того, как плагин установлен три новые типы параметров становятся в наличии:

  • Активный Выбор параметров
  • Активный Выбор Реактивная Параметр
  • Активный выбор Реактивная ссылочный параметр

Активные ВАРИАНТЫ параметры позволяют пользователям выбирать значения для параметра задания.Значения параметров могут быть:

  • динамически (с помощью Groovy или сценария Scriptler)
  • динамически обновляется на основе других параметров пользовательского интерфейса
  • многозначным (может иметь более чем одно значение)
  • оказываемых с различные элементы управления пользовательского интерфейса, в том числе динамического HTML
+1

Очень круто, я посмотрю! Не супер-топик об использовании groovy, но, вероятно, не так много из кривой обучения (примеры выглядят просто). Я также замечаю, что этот плагин очень новый, 1.0 был помечен в июне этого года, так что этого не было, когда я впервые задал вопрос. – quickshiftin

2

Я думаю, что вы могли бы выполнить приведенный вами пример со следующим плагином динамических параметров без использования javascript: https://github.com/tekante/Dynamic-Jenkins-Parameter/wiki. Я лично не использовал этот плагин как отказ от ответственности. Похоже, что его, вероятно, нужно будет создать сначала на основе того, что я видел в репо GitHub, и того факта, что я не могу найти его на официальной странице плагина Jenkins.

+0

Это достойная отправная точка, хотя я не уверен, что хочу скомпилировать ее из исходного кода, но я могу попробовать. Как правило, мой вопрос требует больше, чем просто связанных выпадающих списков. Я хочу _interactivity_ в целом. Например, если отмечена одна из логических опций (флажок), мне может потребоваться принудительное выделение определенного параметра в раскрывающемся списке. В настоящее время хакерское решение JS «кажется лучшим, а тем более его отсутствие надежности. – quickshiftin

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