变量项目配置绑定到jenkins的groovy axis插件中

变量项目配置绑定到jenkins的groovy axis插件中,groovy,jenkins,jenkins-plugins,Groovy,Jenkins,Jenkins Plugins,我有一个多配置的构建,我希望基本上为每个匹配foo/*/bar/*.xml的文件运行一个构建。我认为GroovyAxis插件非常适合,但我找不到任何关于如何从脚本中访问构建配置的文档,因此我无法从任何地方读取工作区目录 运行类似于returnnewfile('..').listFiles().collect{it.toString()}的操作将返回服务器根目录中的所有文件 有人能给我指出正确的方向吗?花了一段时间才弄明白,但这里有一个解决方案。请注意,由于Groovy脚本在主机上运行,因此必须使

我有一个多配置的构建,我希望基本上为每个匹配
foo/*/bar/*.xml
的文件运行一个构建。我认为GroovyAxis插件非常适合,但我找不到任何关于如何从脚本中访问构建配置的文档,因此我无法从任何地方读取工作区目录

运行类似于
returnnewfile('..').listFiles().collect{it.toString()}
的操作将返回服务器根目录中的所有文件


有人能给我指出正确的方向吗?

花了一段时间才弄明白,但这里有一个解决方案。请注意,由于Groovy脚本在主机上运行,因此必须使用FilePath访问从机上的文件

import hudson.FilePath

def workspace = context?.build?.workspace

if (null == workspace) {
    return ['noworkspace'] // avoid returning 'default' so the user has a chance of figuring out what went wrong
}

def configDir = workspace.toString() + '/openpower/configs/'

def dir = new FilePath(workspace.channel, configDir)

def files = []
dir.list().each {
    def name = it.getName()
    if (name.endsWith('_defconfig')) {
        files << name.replace('_defconfig', '')
    }
}

return files
导入hudson.FilePath
def workspace=context?.build?.workspace
if(null==工作区){
return['noworkspace']//避免返回'default',这样用户就有机会找出哪里出了问题
}
def configDir=workspace.toString()+'/openpower/configs/'
def dir=新文件路径(workspace.channel,configDir)
def文件=[]
dir.list()。每个{
def name=it.getName()
if(name.endsWith(“u defconfig”)){

你有没有想过?