1. 程式人生 > 其它 >VUE3 之 多個元件之間的過渡 - 這個系列的教程通俗易懂,適合新手

VUE3 之 多個元件之間的過渡 - 這個系列的教程通俗易懂,適合新手

pipeline {
    agent any

    options {

        skipDefaultCheckout()
        disableConcurrentBuilds()
        timeout(time: 1, unit: 'HOURS')
    }
    environment {
        HARBOR_URL = 'xxxxx'
        HARBOR_USER = 'xxxxx'
        HARBOR_PWD = 'xxxxxxx'
        HARBOR_PROJECT_NAME = 'devops'
    }
    stages {
        stage('getcode') {
            agent {
                docker {
                    image 'xxxxxxx/middleware/ubuntu1404'
                    alwaysPull true
                    reuseNode true
                }
            }
                steps {
                    checkout scm
                    echo "Successfully get gitlab code!!"
                }
            }
        stage('Build images and push images to Harbor') {
        
            agent {
                docker {
                    image 'xxxxxxxx/big-data/devops-jenkins-slave'
                    args '-v /var/run/docker.sock:/var/run/docker.sock'
                    alwaysPull true
                    reuseNode true
                }
            }
            steps{
                script {
                    // 獲取提交地址及獲取tag版本號
                    gitlab_url = "$env.gitlabSourceRepoSshUrl"
                    push_type = "$env.gitlabActionType"                    
                    split_url = gitlab_url.split("xxxxxxxxxxxxxxxx/")
                    split_1 = split_url[-1]
                    split_2 = split_1.split(".git")
                    gitlab_name = split_2[0]
                    tag_1 = "$env.gitlabSourceBranch"
                    tag_2 = tag_1.split("/")
                    tag_version = tag_2[-1]
                    docker_name = gitlab_name.replaceAll("/","-")
                    //構建及推送到Harbor倉庫
                    build_docker_name = "$docker_name"
                    sh "docker pull xxxxxx/middleware/ubuntu1404"
                    sh "docker login -u xxxxxxx-p xxxx xxxxx.com"
                    sh "docker build -t xxxxxxxx/devops/${build_docker_name}:${tag_version} ."

                    println "xxxxxxxx/devops/${build_docker_name}:${tag_version} build success!"
                    sh "docker push xxxxxxxx/devops/${build_docker_name}:${tag_version}"
                    println "xxxx.com/devops/${build_docker_name}:${tag_version} push success!"
                    // 推送到redmine建立任務
                    sh "curl \"http://redmine.xxxxx.com/create_deploy_issue?user_mail=${env.gitlabUserEmail}&project_full_id=${build_docker_name}&project_version=${tag_version}&gitlabSourceRepoHomepage=${env.gitlabSourceRepoHttpUrl}\""
                }
            }
        }
    }
}