我设法有一个包含这些参数的属性文件(key = value),并使用inject env插件我还设法让这些参数在我的第一个作业的参数中定义。
现在出现问题:
我尝试用预定义的参数触发第二个作业(即id = $ id)。那不行。第二个作业得到了这个参数:id = $ id(字符串$ id)而不是第一个作业的id值。虽然$ id值是在第一份工作中定义的。
我也尝试过将属性文件作为参数。也没有工作。第二份工作没有参数。
答案 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来恢复以前的行为。这可能非常不安全,仅作为短期解决方法。