【发布时间】:2020-06-08 20:40:15
【问题描述】:
我想创建几个因某些属性而异的工作。纯字符串属性工作得很好,就像这里的例子https://github.com/sheehan/job-dsl-gradle-example/blob/master/src/jobs/example4Jobs.groovy
另外,我想参数化授权块内的权限。
我创建了一个闭包 (auth) 并想在作业定义中调用它,但这不起作用。
[
[
environment : 'qa',
auth: {
permissions('dev', [
'hudson.model.Item.Read'
])
}
],
[
environment : 'prod',
auth: {
permissions('admin', [
'hudson.model.Item.Read',
'hudson.model.Item.Build',
'hudson.model.Item.Cancel'
])
}
]
].each { Map config ->
pipelineJob("job-${config.environment}") {
displayName("job ${config.environment}")
authorization {
config.auth()
}
}
}
我收到以下错误:
ERROR: (script, line 5) No signature of method: script.permissions() is applicable for argument types: (java.lang.String, java.util.ArrayList) values: [admin, [hudson.model.Item.Read]]
【问题讨论】: