我正在尝试使用Github的Webhook运行构建以获取参数(branch = master)。
从Github - 我看到500错误,并在Jenkins日志中的消息:
引起:java.lang.IllegalArgumentException:分支的参数值非法数量:2
通话看起来像:
如果使用curl
运行它 - 出现相同的错误,但构建触发器。
Build有一个参数和一个值。网址相同 - branch=master
。
这里有什么问题(或者 - 我在这里做错了什么)?
为什么“分支值:2” - 如果只有一个值 - “主”?
我认为这是here的明确错误,但为什么呢?
buildWithParameters
将token = triggerPipelieBuild和branch = master计为两个参数?
但错误说:
“分支的参数值数量:2”
还 - 昨天工作。相同的要求。
我经历了与常规webhook作业完全相同的问题(在Jenkins 2.129中。)似乎不可能处理多个URL参数,在安全令牌之外留下0个其他参数。
我的出路是使用'Generic Webhook Trigger Plugin'(另见https://stackoverflow.com/a/48580407/321797)。
它不仅有助于处理所需数量的URL查询参数,更重要的是支持解析HTTP POST主体。它很容易提取有效载荷的值,将它们设置为变量并使用这些变量触发参数化的下游作业。
即使这个问题很老,我也会给出答案,以防有人遇到同样的问题。
我遇到了同样的问题。经过几次试验和错误,我设法通过将Content Type
从x-www-form-urlencoded
改为application/JSON
来解决它。