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

如何实现一键触发多个Jenkins任务?

一键触发多个Jenkins任务的两种实现方法

方法一:创建Jenkins聚合任务

用Pipeline任务实现

新建一个Pipeline类型的任务,在Pipeline脚本里通过build步骤依次调用所有目标任务。示例脚本:

pipeline {
    agent any
    stages {
        stage('批量触发任务') {
            steps {
                build '任务A'
                build '任务B'
                build '任务C'
                // 按需添加剩余需要触发的任务名称
            }
        }
    }
}

如果目标任务需要传入构建参数,可在build步骤中指定参数,比如:

build job: '带参数的任务', parameters: [string(name: 'ENV', value: 'prod')]

用Freestyle任务实现

新建Freestyle任务,在「构建」环节添加「构建其他项目」步骤,依次填入所有需要触发的任务名称。还可以根据需求选择「只有当构建稳定时才触发」或「不管构建结果如何都触发」,以及是否等待当前任务完成再触发下一个。

方法二:编写Shell脚本调用Jenkins API触发

先在Jenkins个人中心→设置→API令牌页面生成专属API令牌,然后编写如下脚本:

#!/bin/bash

# 替换成你的Jenkins实际配置
JENKINS_URL="http://your-jenkins-address"
USERNAME="your-username"
API_TOKEN="your-api-token"

# 列出所有需要触发的任务名称
TARGET_JOBS=("任务A" "任务B" "任务C" "任务D")

for JOB in "${TARGET_JOBS[@]}"
do
  echo "开始触发任务: $JOB"
  curl -X POST "$JENKINS_URL/job/$JOB/build" \
    --user "$USERNAME:$API_TOKEN" \
    -H "Content-Type: application/x-www-form-urlencoded"
done

如果目标任务需要构建参数,将请求地址改为buildWithParameters并传入参数,示例:

curl -X POST "$JENKINS_URL/job/$JOB/buildWithParameters" \
  --user "$USERNAME:$API_TOKEN" \
  -d "VERSION=v1.0.0&ENV=test"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 12:39:50