前置条件
拥有可运行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}"
}
}
}
}
}
}