通过http方式触发jenkins job

前置条件
拥有可运行job权限的用户token
可运行的jenkins job

  • Jenkins job 根据自己的情况创建

调用JOB
调用不带参数的job
关键字:build

curl -X POST "https://<username>:<user_token>@<job_url>/build"

例子参考

curl -X POST "https://<username>:<user_token>@ci.hobot.cc/job/testjob/job/test_param2/build"

test_param2 pipeline参考

pipeline {
    agent {
        kubernetes {
            label "${UUID.randomUUID().toString()}"
            yaml """
                metadata:
                  labels:
                    some-label: some-label-value
                    class: KubernetesDeclarativeAgentTest
                  namespace: scm
                spec:               
                  nodeSelector:
                    jenkins-ci: "true"
                  containers:
                    - name: prepare
                      image: hub.hobot.cc/builder/cicd-common-tool:v10
                      command:
                      - cat
                      tty: true
                      env:
                        - name: CONTAINER_ENV_VAR
                          value: prepare
            """
        }
    }
    stages{
        stage('lanuch') {
            steps {
                container('prepare') {
                    script {
                        println "123"
                    }
                }
            }
        }
    }
}

调用带参数的job
关键字:buildWithParameters

curl -X POST "https://<username>:<user_token>@<job_url>/buildWithParameters" -d "PARAM1=value1" -d "PARAM2=value2"

例子参考

curl -X POST "https://<username>:<user_token>@ci.hobot.cc/job/testjob/job/test_param/buildWithParameters" -d "DIFF_ID=123" -d "PHID=456"

test_param pipeline参考

pipeline {
    agent {
        kubernetes {
            label "${UUID.randomUUID().toString()}"
            yaml """
                metadata:
                  labels:
                    some-label: some-label-value
                    class: KubernetesDeclarativeAgentTest
                  namespace: scm
                spec:               
                  nodeSelector:
                    jenkins-ci: "true"
                  containers:
                    - name: prepare
                      image: hub.hobot.cc/builder/cicd-common-tool:v10
                      command:
                      - cat
                      tty: true
                      env:
                        - name: CONTAINER_ENV_VAR
                          value: prepare
            """
        }
    }
    parameters {
        string defaultValue: '', description: 'Enter gitlabSourceRepoSshUrl', name: 'gitlabSourceRepoSshUrl', trim: true
        string defaultValue: '', description: 'Enter PH DIFF_ID', name: 'DIFF_ID', trim: true
        string defaultValue: '', description: 'Enter PH PHID', name: 'PHID', trim: true
        string defaultValue: '', description: 'Enter PH REVISION ID', name: 'REVISION_ID', trim: true
    }
    stages{
        stage('lanuch') {
            steps {
                container('prepare') {
                    script {
                        println gitlabSourceRepoSshUrl
                        println DIFF_ID
                        println PHID
                        println REVISION_ID
                        sh "echo ${REVISION_ID}"
                        println "${PHID}"
                    }
                }
            }
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值