该job是jenkins+git+k8s 一起来做
jenkinsfile里面的知识项有
1: when的使用
2:input的使用
3:jenkinsfile发送钉钉消息的使用
4:获取构建人的使用
pipeline{
// 定义groovy脚本中使用的环境变量 environment获取jenkins的构建参数里面的数据
environment{
ORIGIN_REPO = sh(returnStdout: true,script: 'echo $origin_repo').trim()
REPO = sh(returnStdout: true,script: 'echo $repo').trim()
BRANCH = sh(returnStdout: true,script: 'echo $branch').trim()
API_SERVER_URL = sh(returnStdout: true,script: 'echo $api_server_url').trim()
BUILD_VERSION = sh(returnStdout: true,script: 'echo $build_version').trim()
DATE_TAG = sh(returnStdout: true,script: 'echo $date_tag').trim()
PROJECT_NAME = sh(returnStdout: true,script: 'echo $project_name').trim()
POD_NB = sh(returnStdout: true,script: 'echo $pod_nb').trim()
GIT_URL = sh(returnStdout: true,script: 'echo $git_url').trim()
RUN_TIME = sh(returnStdout: true,script: 'echo $run_time').trim()
ROLLBACK = Boolean.valueOf(rollback)
}
// 定义本次构建使用哪个标签的构建环境,本示例中为 “slave-pipeline”
agent{
node{
label 'slave-pipeline'
}
}
// "stages"定义项目构建的多个模块,可以添加多个 “stage”, 可以多个 “stage” 串行或者并行执行
stages {
// 定义第一个 stage 拿到构建人的信息
// when 判断条件 满足执行 不满足不执行
stage('Add ENV') {
when {
expression {
return ROLLBACK == 'false'
}
}
steps {