假设我有一个像这样的jenkins文件:
#!groovy
import ...
import ...
import ...
library identifier: 'A@master', retriever: modernSCM(
[$class: 'GitSCMSource',
remote: '<the github link for A>'])
// ADD LIBRARY 'A' METHODS TO MAP HERE
library identifier: 'B@master', retriever: modernSCM(
[$class: 'GitSCMSource',
remote: '<the github link for B>'])
// ADD LIBRARY 'B' METHODS TO MAP HERE
// rest of the jenkinsfile
是否可以使用库填充范围的全局变量填充地图?我的意思是,如果我加载库A
并且它具有方法foo, bar, baz
,并且我加载库B
并且它具有方法foo, qux, abc
。在jenkinsfile中,是否可以有一个像这样工作的地图?
global_map['A'].foo {
asd = 'asd'
qwe = 'qwe'
}
global_map['B'].foo {
asd = 'asd'
qwe = 'qwe'
}
这是否可以作为插件或一小段代码?我的目标是能够运行两个版本的foo
而不会被覆盖。
编辑:要清楚,功能foo, bar, baz, quz, abc
都在两个库的vars/
文件夹中。