从Spinnaker触发作业时,有一种方法可以传递pipelineParams。例如,我看到
{
"continuePipeline": false,
"failPipeline": true,
"isNew": true,
"job": "job123",
"master": "master123",
"name": "Jenkins",
"parameters": {
"mavenProfile": "FooBar" <-- ???
},
"type": "jenkins"
}
parameters
字段的作用是什么?我们可以使用它来将参数传递给Jenkins管道吗?
有没有人成功完成将参数传递给Jenkins管道的操作?
触发以上阶段时,它立即失败并显示一条消息:
job/master, passing params to a job which doesn't need them
答案 0 :(得分:1)
在Spinnaker中的Jenkins集成启动了单独的工作。
如果在Jenkins Job配置中选择This project is parameterized
,则突出显示的参数将指向定义的作业参数。出现该错误的原因是因为Jenkins在启动作业时遇到了两个不同的端点,一个端点有参数,而另一个没有参数。
据我所知,没有办法从Spinnaker启动jenkins管道,但是我认为它看起来与Jenkins启动工作阶段有所不同,因为它将不得不使用不同的API端点。
答案 1 :(得分:0)
正如托马斯·林(Thomas Lin)所说的那样,问题是我试图将参数传递给非参数化管道。
我继续进行我的詹金斯管道的参数化:
https://github.com/jenkinsci/pipeline-model-definition-plugin/wiki/Parametrized-pipelines
parameters {
string(defaultValue: "", description: 'What profile?', name: 'mavenProfile')
}
一旦我这样做,我的Jenkins管道就开始从Spinnaker管道接收参数。