Я использую Jenkinse (file) Piplines и хочу запустить несколько этапов сборки параллельно (например, разные константы - они не могут быть переданы компилятору, исходный код должен быть изменен скриптом).
это может выглядеть примерно так:
stage('Build') {
steps {
parallel(
build_default: {
echo "WORKSPACE: ${WORKSPACE}"
bat 'build.bat'
},
build_remove: {
echo "WORKSPACE 2: ${WORKSPACE}"
// EXAMPLE: only to test interference
deleteDir() // <- this would be code changes
}
)
}
}
Это не работает, так как весь код удаляется перед завершением компиляции. Я хочу выполнить оба шага параллельно, как это делает jenkins (создание нескольких временных каталогов @2
и т. Д.), Когда 2 сборки выполняются параллельно (например, при нажатии кнопок).
Единственное, что я обнаружил до сих пор, - это сам создаю временные каталоги в рабочем каталоге, копирую в них исходный код и работаю там. Но я ищу более хорошее / более автоматическое решение. (при использовании команды узла у меня те же проблемы, так как у меня только один узел)