将全局函数复制到jenkins中的地图上

时间:2018-07-31 20:54:01

标签: jenkins jenkins-plugins

假设我有一个像这样的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/文件夹中。

0 个答案:

没有答案