Javascript来增强参数化构建

时间:2013-12-06 23:01:09

标签: javascript jenkins

Jenkins的'参数化'版本有点受限。如果我想拥有彼此相关的选项怎么办?

例如2个下拉列表。第一个选择控制第二个选项......

我真的没有看到任何规定的方法来实现这一点,但一个想法(并且感觉超级hacky)将是使用javascript。

我注意到您可以在参数的 description 属性中输入<script>标记。也许一个地方可以放入一些js?看起来像prototype.js随系统一起提供。

那么一个想法有多糟糕,或者是否有'正确'的方法来做这样的事情?

2 个答案:

答案 0 :(得分:2)

我认为您可以使用以下动态参数插件完成列出的示例,而无需使用javascript:https://github.com/tekante/Dynamic-Jenkins-Parameter/wiki。我没有亲自使用该插件作为免责声明。看起来它可能需要首先根据我在GitHub仓库中看到的内容以及我无法在官方Jenkins插件页面上找到它来构建。

答案 1 :(得分:2)

查看Active Choices插件,它完全符合您的要求:

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

  

用于生成和呈现多个值的Jenkins UI插件   作业参数的选项。参数选项可以是动态的   从Groovy脚本生成,可以响应其他作业的更改   参数。值选项可以呈现为组合框,   复选框,单选按钮或丰富的HTML。积极的选择努力   提供单个插件功能,散布在几个之间   预先存在的插件和一些不具备的独特功能   可用。

     

Active Choices插件提供了额外的Jenkins   可以呈现为用户界面(UI)控件的参数类型   在工作形式。

     

安装插件后,会有三个新的参数类型   可用的:

     
      
  • 主动选择参数
  •   
  • 主动选择反应参数
  •   
  • 主动选择反应参考参数
  •   
     

Active Choices参数允许用户为作业参数选择值。参数值可以是:

     
      
  • 动态生成(使用Groovy或Scriptler脚本)
  •   
  • 基于其他UI参数动态更新
  •   
  • 多值(可以有多个值)
  •   
  • 使用各种UI控件进行渲染,包括动态HTML
  •