- Если вам нужно отправить переменную из одной сборки в другую:
Параметризованная сборка - это самый простой способ сделать это:
https://wiki.jenkins.io/display/JENKINS/Parameterized+Build
URL будет выглядеть так:
http://server/job/myjob/buildWithParameters?PARAMETER=Value
Если вам нужно обмениваться сложными данными, вы можете сохранить некоторые файлы в своем рабочем пространстве и использовать их (отправить абсолютный путь) из другой сборки.
- Если вам нужно повторно использовать простую переменную, вычисленную во время вашей сборки
Я бы хотел использовать переменную окружения, обновленную во время вашего потока:
Jenkinsfile (Declarative Pipeline)
pipeline {
agent any
environment {
DISABLE_AUTH = 'true'
DB_ENGINE = 'sqlite'
}
stages {
stage('Build') {
steps {
sh 'printenv'
}
}
}
}
Все подробности есть:
https://jenkins.io/doc/pipeline/tour/environment/
- Если вам нужно повторно использовать сложные данные между двумя сборками
У вас есть два случая, это если ваша сборка находится в одной рабочей области или нет.
В той же рабочей области вполне нормально записать ваши данные в текстовый файл, который позже будет использоваться другим заданием.
Плагин archiveArtifacts удобен, если ваш сценарий использования предназначен для извлечения результатов теста из журналов и его повторного использования позже. В противном случае вам придется написать процесс самостоятельно.
Если ваша вторая работа использует другое рабочее пространство, вам нужно будет указать абсолютный путь к вашей детской работе. Для того, чтобы скопировать и обработать его.