@Library('gm-pipeline-library') _ pipeline { agent any options { // Console output add timestamps timestamps() // Disallow concurrent executions of the Pipeline disableConcurrentBuilds() // On failure, retry the entire Pipeline the specified number of times. retry(1) } parameters { choice(name: 'cache', choices: ['', '--no-cache'], description: 'docker build 是否使用cache,默认使用,不使用为--no-cache') } environment { // Image Tag branch.time.hash TAG = dockerTag() // Image Full Tag IMAGE = "${DOCKER_REGISTRY}/gm-backend/vest:$TAG" } stages { stage("Begin") { steps { dingNotify "before" } } stage('Build') { steps { sh "docker build . ${params.cache} -f ./Dockerfile -t $IMAGE" sh "docker push $IMAGE" } } } post { always { dingNotify "after", "${currentBuild.currentResult}" } } }