jenkins部署笔记

pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        checkout([$class: 'GitSCM',
        branches: [[name: GIT_BUILD_REF]],
        userRemoteConfigs: [[
          url: GIT_REPO_URL,
          credentialsId: CREDENTIALS_ID
        ]]])
        
        //打印相关变量
         echo "GIT_BUILD_REF:${GIT_BUILD_REF}"
         echo "GIT_REPO_URL:${GIT_REPO_URL}"
          echo "CREDENTIALS_ID:${CREDENTIALS_ID}"
          echo "CODING_MAVEN_REPO_ID:${CODING_MAVEN_REPO_ID}"
          echo "CODING_MAVEN_REPO_URL:${CODING_MAVEN_REPO_URL}"
           echo "CODING_MAVEN_VERSION:${CODING_MAVEN_VERSION}"
           echo "GIT_LOCAL_BRANCH:${GIT_LOCAL_BRANCH}"
          
      }
    }
    stage('编译') {
      steps {
        sh 'ls'
        //选择你要构建的xxx.pom
        sh 'cd xxx'
        sh 'mvn clean package -Dmaven.test.skip=true'
      }
    }
    stage('修改版本号') {
      steps {
        sh "mvn versions:set -DnewVersion=${CODING_MAVEN_VERSION}"
      }
    }
    stage('推送到 CODING Maven 制品库') {
      steps {
        echo '发布中...'
        withCredentials([
          usernamePassword(
            credentialsId: "${CODING_ARTIFACTS_CREDENTIALS_ID}",
            usernameVariable: 'CODING_MAVEN_REG_USERNAME',
            passwordVariable: 'CODING_MAVEN_REG_PASSWORD'
          )
        ]) {
        sh 'ls'
        //同上
        sh 'cd xxx'
        //观察settings内的信息
        sh 'mvn deploy -s ./settings.xml -DskipTests'
        }

        echo '发布完成.'
      }
    }
  }
  environment {
    CODING_MAVEN_REPO_ID = "${CCI_CURRENT_TEAM}-${PROJECT_NAME}-${MAVEN_REPO_NAME}"
    CODING_MAVEN_REPO_URL = "${CCI_CURRENT_WEB_PROTOCOL}://${CCI_CURRENT_TEAM}-maven.pkg.${CCI_CURRENT_DOMAIN}/repository/${PROJECT_NAME}/${MAVEN_REPO_NAME}/"
  }
}

你可能感兴趣的:(jenkins,笔记,elasticsearch)