Использование переменных на этапах декларативного конвейера Jenkins: методы и примеры

В декларативном конвейере Jenkins вы можете определять переменные на разных уровнях, в том числе на уровне конвейера и на отдельных этапах. Вот несколько способов поэтапного использования переменных:

  1. Переменные среды: вы можете определить переменные среды, доступные на всех этапах конвейера. Эти переменные можно установить с помощью блока environmentна верхнем уровне конвейера или на отдельных этапах с помощью директивы environment.

Пример:

pipeline {
    agent any
    environment {
        MY_VARIABLE = "some value"
    }
    stages {
        stage('Example') {
            steps {
                echo "Variable value: ${env.MY_VARIABLE}"
            }
        }
    }
}
  1. Параметры. Вы можете определить параметры для своего конвейера и использовать их на этапах. Параметры можно определить на верхнем уровне или внутри этапов с помощью блока parameters.

Пример:

pipeline {
    agent any
    parameters {
        string(name: 'MY_PARAMETER', defaultValue: 'default value', description: 'Some description')
    }
    stages {
        stage('Example') {
            steps {
                echo "Parameter value: ${params.MY_PARAMETER}"
            }
        }
    }
}
  1. Переменные внутри этапов. Вы также можете определять переменные непосредственно внутри этапов, используя блок script. Эти переменные применимы только к определенному этапу.

Пример:

pipeline {
    agent any
    stages {
        stage('Example') {
            steps {
                script {
                    def myVariable = "some value"
                    echo "Variable value: ${myVariable}"
                }
            }
        }
    }
}