2012-08-01 35 views
3

我已经创建了名为“RUNSCRIPT”的值为“否”(默认)和“是”的生成促进“选择”参数,并尝试获取EXEC中参数的值SHELL命令为$ RUNSCRIPT,但既没有值“Yes”也没有“No”。如果我看看输出它为$ RUNSCRIPT(照原样)。为什么不被价值取代。有什么建议么?另外,尝试创建其他类型的参数,例如字符串值,但它不工作。詹金斯促进参数值没有通过壳牌执行命令

+0

也许[this](https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Build)文章会有帮助。 – Bernard 2012-08-02 02:54:55

+0

这是针对与促销参数不同的生成参数。 – 2012-08-02 07:45:17

+0

这些参数是否称为“批准参数”?如果是这样,他们会为我进行工作并扩大促销活动。也许你可以将你的配置文件发布到某处,比如pastebin或gist。 – sti 2012-08-02 20:50:14

回答

0

如果你想从jenkins传递一个值到脚本,你需要定义参数为jenkins环境变量。我为此使用了Ant。例如:

环境的属性= “ENV” 属性名= “用户” 值= “$ {} env.user”

如果我只是用

属性名= “用户” 值= “$ {user}”

这些值将从其他引用用户的文件传递。

+0

但是,我认为应该为你在创建参数时创建参数,因为如果你看到帮助它说:“这些参数暴露为构建为环境变量。”无论如何,你在Jenkins如何/在哪里创建这个环境变量? – 2012-08-02 08:22:12

+0

您使用的是宣传插件吗 – 2012-08-02 09:02:41

+0

是的。我们正在使用推广插件。 – 2012-08-02 11:10:01

0

我设法让一个批准参数作为下游版本的生成参数传递(由促销本身触发);你只需要传递它们。

我了解到批准参数在批准“build”内部可以这么说,因此您在该批准中的任何操作都应该能够引用任何批准参数。

这意味着你可以有一个审批参数FOO,然后在批准的行动,如果你有一个“触发参数化建”行动,您可以使用“预定义参数”与文本:

BAR=${FOO} 

然后,触发的构建会将BAR构建特权设置为任何构建的升级值。