Jenkins的job远程触发另一个Jenkins上的job

有时候我们需要使用一台虚拟机上的Jenkins的job去 触发另一台虚拟机上的Jenkins的job。

网上已有的教程很多都是使用Parameterrized Remote Trigger Plugin插件进行触发。今天我们讲一个更简单的方式,就是使用curl。

假设我们用Jenkins1的Job1去触发Jenkins2 的job2

1 命令说明

curl X GET --url "https://jenkins.url.com/foldername/job/foldername/job/yourJobName/buildWithParameters?token=your_token_in_remote_jenkins&param1=value&param2=value" --user username:credentialID -x http://webproxy.url:port

上面代码为:

curl X GET --url “https://jenkins.url.com/foldername/job/foldername/job/yourJobName/buildWithParameters?token=your_token_in_remote_jenkins&param1=value&param2=value” --user username:credentialID -x http://webproxy.url:port

如果连接Jenkins2不需要加代理,只需要把-x http://webproxy.url:port去掉即可。

我们只需要在Jenkins1的Job1中将上述代码放到pipeline里,如果Jenkins的虚拟机是Windows系统,只需要使用bat命令启动即可:

pipeline {
    agent {label 'labelname'}
    stages {
        stage('Trigger Job') {
            steps {
               bat 'curl X GET --url "https://jenkins.url.com/foldername/job/foldername/job/yourJobName/buildWithParameters?token=your_token_in_remote_jenkins&param1=value&param2=value" --user username:credentialID -x http://webproxy.url:port'
            }
        }   
    } 
}

以上就可以触发了。但是此时我们传参是固定的value。我们将其设置成参数化形式:

pipeline {
    agent {label 'labelname'}
    parameters {
      string 'param1'
      string 'param2'
    }
    stages {
        stage('Trigger Job') {
            steps {
               bat 'curl X GET --url "https://jenkins.url.com/foldername/job/foldername/job/yourJobName/buildWithParameters?token=your_token_in_remote_jenkins&param1="%param1"%&param2="%param2%"" --user username:credentialID -x http://webproxy.url:port'
            }
        }   
    } 
}

解释:

因为Jenkins1是Windows系统,需要用bat命令

在bat中变量调用使用"%paramName%"的形式,使用 p a r a m s . p a r a m N a m e 或者 {params.paramName}或者 params.paramName或者{paramName}都是无法调用成功的。

扫描二维码关注公众号,回复: 14483027 查看本文章

命令中的token需要加在Jenkins2 的job2中,如下图:
图片

最后: 可以在公众号:【伤心的辣条】 自行领取一份216页软件测试工程师面试宝典文档资料【免费的】。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

现在我邀请你进入我们的软件测试学习交流群:746506216】,备注“入群”, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!

软件测试工程师自学教程:

这才是2022最精细的自动化测试自学教程,我把它刷了无数遍才上岸字节跳动,做到涨薪20K【值得自学软件测试的人刷】

接口性能测试 — 软件测试人必会618实战场景分析

软件测试工程师月薪2W以上薪资必学技能 — Python接口自动化框架封装.

美团面试真题_高级测试25K岗位面试 — 软件测试人都应该看看

测试开发之全面剖析自动化测试平台 — 软件测试人的必经之路

软件测试必会_Jmeter大厂实战 — 仅6步可实现接口自动化测试

Jmeter实战讲解案例 — 软件测试人必会

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_67695717/article/details/126346485