如何在Jenkins的成功构建中触发参数化构建?

如何在Jenkins的成功构建中触发参数化构建?,第1张

如何在Jenkins的成功构建中触发参数化构建?

您的管道很可能看起来像这样:

node {  stage('build') {    // sh "make"  }  // ...  stage('trigger-project-c') {      def job = build job: 'project-c', parameters: [[$class: 'StringParameterValue', name: 'MY_PARAM', value: 'somevalue']]  }}

通过将所有内容包装在

node
闭包内部,
project-c
可以在线触发下游作业,而无需暂停上游作业/释放执行程序。

因此,长时间不做任何事情的事情不应包装在一个

node
步骤中,以免阻塞执行程序。一个非常相似的情况是使用该
input
步骤等待用户反馈时。

取而代之的是,您的管道应如下所示,这就是(可以这么说)最佳实践(因为您不会阻塞执行程序):

stage('build') {  node {    // sh "make"  }}// ornode {  stage('build') {    // sh "make"  }  stage('unit') {    // sh "make"  }} // node// note: the following pre is _not_ wrapped inside a `node` step stage('trigger-project-c') {  def job = build job: 'project-c', parameters: [[$class: 'StringParameterValue', name: 'MY_PARAM', value: 'somevalue']]}

无需将

build
步骤包装在内
node
,即,为其阻塞执行器。对于其他步骤(如
sh
),管道执行将触发错误并提醒您不能在
node
分配之外运行。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5127898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存