Jenkins / Hudson在运行时的作业参数?

时间:2012-06-06 19:43:00

标签: hudson jenkins hudson-plugins jenkins-plugins

问题

假设我有一个jenkins / hudson作业(例如自由风格),它有两个参数 PARAM_ONE PARAM_TWO 。现在,我不知道这些参数的值,但我可以运行一些脚本(perl / shell)来查找这些参数的值,然后我希望用户从下拉列表中选择,之后我可以开始构建。

有没有办法做到这一点?

3 个答案:

答案 0 :(得分:3)

听起来你已经找到了一个可以满足你需要的插件,这与内置的参数化构建功能非常相似。

回答第二个问题:在定义参数化构建时,参数通常作为环境变量传递给作业。因此,当您使用您的语言访问环境变量时,您将访问它们,例如,如果您定义了参数PARAM_ONE,则可以将其访问为:

在bash中:

$PARAM_ONE

在Windows批处理中:

%PARAM_ONE%

在Python中:

import os
os.getenv('PARAM_ONE')

我想这对于您正在使用的扩展选择参数插件是相同的。

答案 1 :(得分:0)

只需安装this,然后在构建脚本中提供参数,如:

  

"您的构建脚本" %PARAMONE %% PARAMTWO%

答案 2 :(得分:0)

在Java中,您可以从运行对象

中访问这些参数
EnvVars envVars = new EnvVars();
envVars = run.getEnvironment(listener);
for (String envName2 : envVars.keySet()) {
   listener.getLogger().println(envName2 + " = " + envVars.get(envName2));
}