매개 변수를 통해 구성 가능한 숫자 작업을 병렬로 수행하는 선언 파이프 라인을 만들려고하지만 병렬 파트에 문제가 있습니다.선언적 파이프 라인에서 동적 단계의 동적 수
는 기본적으로, 어떤 이유로 아래의 파이프 라인은 오류를
Nothing to execute within stage "Testing" @ line .., column ..
를 생성하고 그 이유를, 또는 그 해결 방법을 알아낼 수 없습니다.
import groovy.transform.Field
@Field def mayFinish = false
def getJob() {
return {
lock("finiteResource") {
waitUntil {
script {
mayFinish
}
}
}
}
}
def getFinalJob() {
return {
waitUntil {
script {
try {
echo "Start Job"
sleep 3 // Replace with something that might fail.
echo "Finished running"
mayFinish = true
true
} catch (Exception e) {
echo e.toString()
echo "Failed :("
}
}
}
}
}
def getJobs(def NUM_JOBS) {
def jobs = [:]
for (int i = 0; i < (NUM_JOBS as Integer); i++) {
jobs["job{i}"] = getJob()
}
jobs["finalJob"] = getFinalJob()
return jobs
}
pipeline {
agent any
options {
buildDiscarder(logRotator(numToKeepStr:'5'))
}
parameters {
string(
name: "NUM_JOBS",
description: "Set how many jobs to run in parallel"
)
}
stages {
stage('Setup') {
steps {
echo "Setting it up..."
}
}
stage('Testing') {
steps {
parallel getJobs(params.NUM_JOBS)
}
}
}
}
나는 기존의 파이프 라인에 이렇게 많은 예,하지만 선언적하지 봤어요. 누구나 내가 뭘 잘못하고 있는지 알아?
왜 줄 번호를 제거하고 있습니까? 그렇게 유용한 정보가 아닌가요? 최소한의 예를 시도해 보셨습니까? – StephenKing