jenkins参数化触发插件不会向下游传递参数

时间:2016-06-22 11:08:28

标签: jenkins

我有两份工作。我希望第一份工作用第一份工作的参数触发第二份工作。

我设法有一个包含这些参数的属性文件(key = value),并使用inject env插件我还设法让这些参数在我的第一个作业的参数中定义。

现在出现问题:

我尝试用预定义的参数触发第二个作业(即id = $ id)。那不行。第二个作业得到了这个参数:id = $ id(字符串$ id)而不是第一个作业的id值。虽然$ id值是在第一份工作中定义的。

我也尝试过将属性文件作为参数。也没有工作。第二份工作没有参数。

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

在下拉列表中"添加参数"只需使用"当前构建参数"。这会将所有先前定义的参数传递给下一步。 (只有你通过Jenkins添加的,而不是你在批处理脚本中添加的那些!)

同样的下拉列表中还有选项"属性文件中的参数"在你的情况下听起来更合适

答案 1 :(得分:1)

你在运行什么版本的Jenkins?

我今天遇到了这个问题,看起来环境变量由于安全漏洞而无法传递。

https://wiki.jenkins-ci.org/display/JENKINS/Plugins+affected+by+fix+for+SECURITY-170

提供的解决方法 -

  

由于已知此更改会影响许多插件,因此可以通过将系统属性hudson.model.ParametersAction.keepUndefinedParameters设置为true来恢复以前的行为。这可能非常不安全,仅作为短期解决方法。