Я хочу создать задание jenkins, скажем, задание A. У меня есть еще одно задание Jenkins Deploy, скажем задание B. У меня есть команда aws cli, которая возвращает мне имена служб ECS в определенном кластере, я помещаю это вмассив. Теперь для каждого элемента массива в качестве параметра я хочу вызвать задание B. т. Е. Я хочу, чтобы задание A вызывало задание B параллельно, для каждого элемента массива я передаю его в качестве параметра.
Новичок в jenkins, поэтому попробовал использовать "Multi-Job Plugin" и "Parameterized Plugin"
pipeline {
agent any
stages {
stage('Run JobB') {
steps {
script{
def ecs_services = ['service1', 'service2', 'service3']
for (int i = 0; i < ecs_services.size(); i++) {
def service = ecs_services[i]
ecs["${service}"] = build job: 'JobB' , parameters: [name: 'foo', value: 'bar']
}
failFast: true
parallel ecs
}
}
}
}
}
something as simple as, also errors out
pipeline {
agent any
stages {
stage('Stage 1') {
steps {
echo 'Hello world!'
}
}
}
}
Started by user ops
[BFA] Scanning build for known causes...
[BFA] No failure causes found
[BFA] Done. 0s
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 2: Invalid argument for agent - '${any}' - must be map of config options or bare none. @ line 2, column 11.
agent any
^
1 error
at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:310)
at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1085)
at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:603)
at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:581)
at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:558)
at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:298)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268)
at groovy.lang.GroovyShell.parseClass(GroovyShell.java:688)
at groovy.lang.GroovyShell.parse(GroovyShell.java:700)
at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:67)
at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:410)
at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:373)
at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:213)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
Finished: FAILURE