我有一个Jenkins作业具有单个布尔参数。此参数的默认值为false。我通过发布到构建URL并传递我的令牌和参数,从另一个作业的ANT构建脚本远程构建它。Jenkins远程参数化构建始终使用默认参数值而不是那些传递的参数
curl -X POST 'MY_JENKINS_SERVER/job/JOB_NAME/buildWithParameters?token=12345;REPORTS=true' --user MY_USERNAME:MY_PASS
注意,我在单引号(这应该照顾的编码问题)的URL和布尔参数的名称是报告(大写在詹金斯和ANT)。此外,我想指出,如果我使用&符号(&)来分隔令牌和我的其他参数,则在构建时出现以下错误:实体“REPORTS”的引用必须以';'结尾,分隔符。
不管URL字符串中的REPORTS参数的值是什么,参数在构建时总是默认值为false。我在Jenkins中将默认值更改为true,并且无论传递的参数值如何都始终为true。基本上,它总是使用默认值并忽略传递的参数值。我也尝试传递任何REPORTS参数,当然它需要默认值。
在我工作的build文件(即我远程触发的),我打印参数为$ {} env.REPORTS
我看过了上如此相似的问题,但没有他们的解决方案的工作为了我。我试着在URL中移动参数,但似乎没有任何工作。有任何想法吗?
[对实体“foo”的引用必须以';'结尾。分号](http://stackoverflow.com/questions/6483807/the-reference-to-entity-foo-must-end-with-the-delimiter) – BalusC 2016-05-09 12:25:03