Jenkinsfile同時部署服務到測試壞境和生產環境

通過jenkins同時打包部署服務到測試壞境和生產環境 

env.PROJ_DIR="${JENKINS_HOME}/workspace"        //jenkins  workspace
env.PROJ_URL="git@github.***.com:devops/WebManageSystem.git"  // 項目的SSH地址
//env.PROJ_NAME="WebManageSystem" // 項目名
env.LANGUAGE="golang" //基礎鏡像
env.TAGS="1.12.4-alpine3.9"     //基礎鏡像TAG
env.HARBOR="dimage.****.com/onlytest"  //鏡像倉庫的URL
env.INAME="webmanagesystem"  //製作的鏡像名(自定義時不要使用大寫字母)
//    String tag='latest' //製作的鏡像TAG
node {


        stage('Get Code') {
            dir(path: "${PROJ_DIR}/$JOB_NAME/") {    //指定git拉取代碼目錄
                git "${PROJ_URL}"
                tag = sh(returnStdout: true, script: 'git rev-parse --short HEAD').trim()  // 獲取 git  commitID
                }
        }

        withEnv(["IMAGE_TAG=${tag}"]) {
            stage('Docker Build') {           //構建鏡像,ssh到遠程主機執行命令,該命令要用"",Dodckerfile頂格
            sh '''
                  ssh [email protected].**.** "rm -rf /opt/$JOB_NAME"   //遠程登錄harbor服務器
                  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章