Наша цель состоит в том, чтобы разделить наш конвейер с несколькими агентами.
У нас есть подчиненный, называемый slave1, который имеет единственную цель извлечения на git и создает исполняемые файлы.
В конце концов, когда slave1 завершает работу, мы хотим передать его выходные данные slave2, единственной целью которого является тестирование исполняемого файла slave1.
Обратите внимание, что идея здесь не в том, чтобы разделить задания, а получить файлы в тот же конвейер.
Вот пример Jenkinsfile
, который будет иметь больше смысла:
pipeline
{
agent
{
label 'slave1'
}
stages
{
stage("Initialize & Build")
{
steps
{
script
{
println("Im starting the pipeline with slave1!")
// Builds Files
// ....
// Has many files that needs to pass to slave2
}
}
}
stage("Execute & Test")
{
agent
{
label 'slave2'
}
steps
{
script
{
println("Im in the new slave - slave2!")
// How does this slave get the files?
}
}
}
}
}
Как можно передавать эти файлы между агентами?
Я читал об артефактах, но похоже, что его цель - вернуть объекты из работы, это не обязательно то, что нужно.