У меня есть декларативная настройка конвейера, где родительский конвейер запускает дочерний конвейер через «build job: workflow ('workflow-name')», и я передаю параметры через директиву «parameters»
Вопрос в том, что в дочернем конвейере на одном из этапов я создаю оболочку и записываю несколько значений в файл, а с помощью метода readFile содержимое файла читается и устанавливается в переменную groovy, определенную в верхней части.дочернего конвейера.
Эта переменная groovy (myVal) видна на всех этапах дочернего конвейера, но мне нужно использовать myVal в родительском конвейере,
Вопрос 1 - Будет лиmyVal будет доступен в родительском конвейере?Вопрос 2 - Если он недоступен, то как я могу получить к нему доступ, даже жизнеспособен ли он?
Как видите, дочерний конвейер работает в контейнере, а родительский конвейер - нет, то есть агент народительский конвейер отличается от родительского конвейера.
def myVal = ''
pipeline {
agent {
docker {
image 'myDockerImage'
label 'myRemoteVM'
args '-v /home/myuser:/home/myuser'
}
}
stages {
stage('step1') {
steps {
script {
sh '''
./myScript.sh
'''
myVal = readFile('myFileName.txt').trim()
}
}
}
}
}
}