Jenkins — Проверка, задано ли значение string параметра

 

Проверяем задано ли значение переменной "GIT_COMMIT_ID", если да, то делаем checkout по хешу коммита, если нет, то делаем checkout по имени ветки. Переменная "GIT_BRANCH_NAME" берется из Active Choice параметра.

Jenkinsfile:

pipeline {
  agent any
  parameters {
    string(defaultValue: '', description: 'If you need to build a specific commit, enter it in this field.', name: 'GIT_COMMIT_ID')
  }
  stages {
    stage('Checkout') {
      steps {
        script {
          if ( env.GIT_COMMIT_ID.isEmpty() ) {
            sh "echo Checkout branch: $GIT_BRANCH_NAME"
            checkout([
              $class: "GitSCM",
              branches: [[name: "${GIT_BRANCH_NAME}"]],
              userRemoteConfigs: [[url: "${GIT_URI}"]]
            ])
          }
          else {
            sh "echo Checkout commit: $GIT_COMMIT_ID"
            checkout([
              $class: "GitSCM",
              branches: [[name: "${GIT_COMMIT_ID}"]],
              userRemoteConfigs: [[url: "${GIT_URI}"]]
            ])       
          }
        }
      }
    }
  } 
}  
0 0 vote
Article Rating

Метки: Метки

Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments