У меня список файлов изменен с git. Я хочу выполнить простую задачу, учитывая этот список файлов, может быть 1 файл, может быть 10. Как мне запустить только две задачи одновременно?
stage('Run two tests at once out of many') {
steps {
script {
def tests = [:] // create a map of tests
def transformTestIntoStep(packageName) {
return {
node {
echo "npm run customTask --file=$packageName" // do something with this file
}
}
}
// get list of files
filesChanged = sh(
returnStdout: true,
script: '''
cd ${CLIENT}
CHANGE_SET="git diff --name-only ${BRANCH_NAME} origin/master"
echo "$CHANGE_SET"
'''
).split('\n')
// convert to map so parallel can use it
tests = filesChanged.collectEntries {
["${it}" : transformTestIntoStep("${it}")]
}
// parallel runs all tasks together, how do I do just two at a time?
parallel tests
}
}
}
Я думал, что это возможно, но не уверен, как поскольку список является динамическим c
stage('Run two tests at once out of many') {
steps {
parallel(
First: {
echo "This is branch a"
},
Second: {
echo "This is branch b"
}
)
}
}