如果两个Jenkins作业都在同一个Jenkins实例上,则很容易从另一个Jenkins作业中调用它们:
pipeline {
agent any
stages {
stage('call the say_hello job') {
steps {
build 'say_hello'
}
}
}
}
但是,如果“ say_hello”目标Jenkins作业与呼叫作业在不同的Jenkins服务器上,我们该怎么做? (不是其他代理,我的意思是由公司中另一个小组管理的完全不同的Jenkins实例。)
现在,我们通过调用Jenkins httpRequest插件来触发它们,然后再进行更多的httpRequest调用以轮询远程作业的状态(以便我们可以传播其结果状态)来完成此操作,但是感觉有点不舒服我希望有一种更强大的方法。
答案 0 :(得分:0)
1)在目标作业中启用URL作业触发器
2)在基于matix的安全性中启用“自动”权限,然后自动添加并设置权限
3)您需要使用API令牌。在用户列表中,单击“自动”用户旁边的“配置”图标(扳手和螺丝起子)。
上面的网址由api令牌,身份验证令牌和用户(例如auto)组成