Как я могу получить выходные данные команды в переменную окружения в Jenkinsfile? - PullRequest
0 голосов
/ 12 марта 2019

Итак, я могу перехватить переменную в следующем шаге:

stage('blah') {
  script {
    INVENTORY_FILE = sh(returnStdout: true, script: 'echo $(date +%Y%m%d).yml')
  }
}

И это работает. За исключением того, что мне нужно, чтобы эта переменная была в области действия всего Jenkinsfile, для всех этапов, а не только для этого. Но я не могу использовать sh () вне сцены. Есть идеи?

1 Ответ

2 голосов
/ 12 марта 2019

Вы можете определить переменную в верхней части Jenkinsfile, а затем получить доступ к этой переменной во всем Jenkinsfile.

def INVENTORY_FILE

pipeline {

    stages {

        stage('blah') {
          script {
            INVENTORY_FILE = sh(returnStdout: true, script: 'echo $(date +%Y%m%d).yml').trim()
          }
        }

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...