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

Я пытаюсь создать несколько конвейерных заданий в папке. В этой папке я создал несколько свойств папки. Мне трудно использовать свойства этой папки на нескольких этапах работы.

используемый плагин: https://wiki.jenkins.io/display/JENKINS/Folder+Properties+Plugin

def region
pipeline {
    agent any
    stages {
        stage('Assign values to global properties') {
            steps {
                withFolderProperties{
                    region = "${env.appRegion}"
                }       
            }
        }
        stage('Print') {
            steps {
                print(region)      
            }
        }
    }
}

Ошибка:

Expected a step @ line 8, column 21.
                       region = "${env.appRegion}"

Заранее спасибо

1 Ответ

1 голос
/ 26 апреля 2019

region = "${env.appRegion}" не является зарезервированным для конвейера именем шага или директивы. Это отличное заявление. Вы должны поместить их в шаге script. Если вы использовали Scripted Pipeline , вы можете поместить любое удобное утверждение в любом месте. Но для Декларативный конвейер любое нестандартное утверждение должно быть заключено в script step.

steps {
    script {
        withFolderProperties{
            region = "${env.appRegion}"
        }
    }
}

steps {
    withFolderProperties{
        script {
            region = "${env.appRegion}"
        }
    }
}

Я не уверен, какой из приведенных выше блоков кода работает, но вы можете попробовать.

...