You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jenkins中从一个Slave服务器调用另一个Slave的任务?

跨Jenkins Slave触发任务的实现方案

以下是几种可行的实现方式,适配不同的Jenkins任务类型:

1. 用原生"构建后操作"触发(适合自由风格任务)

这是最直接的配置方式,无需代码:

  • 打开Slave2上的build job配置页,找到构建后操作模块,添加「Build other projects」选项
  • 在「项目名称」中填写deploy job的准确名称
  • 按需配置触发条件:比如勾选「Trigger only if build is stable」,确保只有构建成功时才触发部署
  • 关键配置:在deploy job的配置页,开启「Restrict where this project can be run」,指定运行标签为Slave1(或server1的标识),确保部署任务固定在目标Slave执行

2. 用Jenkins Pipeline触发(适合流水线任务)

如果两个任务都是流水线,可通过Pipeline语法灵活控制触发逻辑:

build job的Jenkinsfile(运行在Slave2)

pipeline {
    agent { label 'Slave2' } // 绑定到Slave2执行构建
    stages {
        stage('执行构建') {
            steps {
                // 这里写你的构建命令,比如编译、打包等
                sh 'mvn clean package'
            }
        }
    }
    post {
        success { // 构建成功后触发部署任务
            build job: 'deploy job', 
                wait: false, // 可选:设为true则等待部署完成再结束build job
                parameters: [string(name: 'BUILD_VERSION', value: env.BUILD_NUMBER)] // 可选:传递构建版本等参数
        }
    }
}

deploy job的Jenkinsfile(固定在Slave1)

pipeline {
    agent { label 'Slave1' } // 强制绑定到Slave1执行部署
    parameters {
        string(name: 'BUILD_VERSION', description: '待部署的构建版本')
    }
    stages {
        stage('执行部署') {
            steps {
                sh "deploy.sh ${params.BUILD_VERSION}" // 使用传递的参数执行部署脚本
            }
        }
    }
}

3. 用HTTP API触发(适合复杂自定义场景)

如果需要更灵活的触发逻辑(比如带复杂认证、自定义参数),可以通过Jenkins的REST API触发:

  • 先获取Jenkins账号的API Token:进入个人设置页,生成专属API Token
  • 在build job的构建后操作中添加「Execute shell」(Windows用「Execute Windows batch command」),执行curl命令:
# 触发deploy job,可添加参数
curl -X POST \
  -u jenkins_username:your_api_token \
  'http://jenkins_server_url/job/deploy%20job/buildWithParameters?BUILD_VERSION=1.0.0'
  • 同样要确保deploy job配置了固定运行在Slave1的限制

注意事项

  • 权限配置:确保运行build job的用户拥有触发deploy job的权限(在Jenkins全局安全或job权限设置中配置)
  • 参数传递:如果部署需要构建产出的信息,一定要在触发时传递对应参数,避免依赖临时文件
  • 失败处理:可根据需求配置触发失败后的重试或通知逻辑,比如在Pipeline的post块中添加failure分支

内容的提问来源于stack exchange,提问作者Willingtolearn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 00:30:45