我正在建立一个集中构建系统,其中有几个项目被“打包”。可以使用选项参数选择项目,并在此基础上构建SVN结帐路径。存储库是相同的,但每个应用程序的路径略有不同,例如:
我的问题是我需要以某种方式将应用名称与其位置匹配。
我想到的第一个想法是一个键值参数,但我还没有找到允许它的插件。
第二个是在文件中定义一些环境变量(有2-3个插件可以执行),然后使用choice参数中选择的值作为env var的键。这有可能以任何方式实现吗?
亲切的问候
答案 0 :(得分:0)
您可以将Conditional BuildStep Plugin与EnvInject Plugin一起使用,以便在任何其他构建步骤之前设置一个依赖于构建参数的环境变量(例如APP_PATH
)。然后,只要在构建中需要${APP_PATH}
,就可以使用{{1}}。
答案 1 :(得分:0)
几年之后:-)并且在一个不相关的主题上,我发现Active choices plugin也称为uno choice plugin的分叉,它允许定义在更改其他参数时动态更新的参数:
1)使用以下groovy-script内容定义名为$("form div:first div:nth-child(3)").after("<div class='alignleft actions'><p>New div!</p></div>");
的活动选择参数
states
2)定义一个名为return[
'Sao Paulo',
'Rio de Janeiro',
'Parana',
'Acre'
]
的主动选择反应参数,它对第一个参数值的变化作出反应,并使用以下groovy-脚本内容:
cities
因此,每次if (States.equals("Sao Paulo")) {
return ["Barretos", "Sao Paulo", "Itu"]
} else if (States.equals("Rio de Janeiro")) {
return ["Rio de Janeiro", "Mangaratiba"]
} else if (States.equals("Parana")) {
return ["Curitiba", "Ponta Grossa"]
} else if (States.equals("Acre")) {
return ["Rio Branco", "Acrelandia"]
} else {
return ["Unknown state"]
}
更改时,可选择的state
列表都会相应更新: