如何使用"参数化远程触发插件"在詹金斯管道脚本?

时间:2017-01-17 09:59:57

标签: jenkins jenkins-plugins jenkins-pipeline

我尝试过搜索,但没有找到任何例子。我试过https://jenkins.io/doc/pipeline/examples/#trigger-job-on-all-nodes并得到它是针对同一个Jenkins上的不同节点。 我想触发另一个Jenkins的构建。我在Jenkins的系统配置中配置了远程主机和身份验证。 如何调用"参数化远程触发插件"在Jenkins Pipeline脚本中?

2 个答案:

答案 0 :(得分:5)

似乎是一个开放的错误:https://issues.jenkins-ci.org/browse/JENKINS-38657

作为一种解决方法,您可以在本地创建另一个旧类型的作业,并使用旧学校非管道脚本方式的插件。然后在您的管道脚本中,您只需触发此作业。我知道这是一个丑陋的适配器,但是你已经参数化了这个适配器,并且几乎可以运行它并运行它;)

修改

错误38657已经关闭,该插件自2018年5月16日起作为管道步骤提供。使用方法应该像以下一样简单:

//Trigger remote job
def handle = triggerRemoteJob(remoteJenkinsName: 'remoteJenkins', job: 'RemoteJob')

有关the triggerRemoteJob step

的更多信息

答案 1 :(得分:3)

对于任何想使用声明性Jenkinsfile语法实现此目的的人:

steps {
   triggerRemoteJob remoteJenkinsName: 'configured-remote-jenkins-name', job: 'trigger-job-folder/trigger-job-name', blockBuildUntilComplete: true
}