groovy 用于复制工件权限的Jenkins DSL API

eoxn13cs  于 2023-02-07  发布在  Jenkins
关注(0)|答案(2)|浏览(230)

我正在尝试添加一个对Jenkins job dsl的调用,它将配置该作业以允许另一个构建复制工件。但是,我无法在Jenkins Job DSL API中找到它的命令:https://jenkinsci.github.io/job-dsl-plugin/
下面是我尝试使用DSL设置的选项:

这个命令存在吗?如果不存在,有没有办法设置我的groovy来做这个?

oyxsuwqo

oyxsuwqo1#

没有内置的DSL来设置该权限,但是可以使用Dynamic DSL
作业DSL API查看器可以在http://localhost:8080/plugin/job-dsl/api-viewer/index.html中打开,其中localhost是您的Jenkins主机。例如,搜索copyArtifactPermission

job('example') {
  properties {
    copyArtifactPermissionProperty {
      projectNames('one, two')
    }
  }
}
dxxyhpgq

dxxyhpgq2#

是这个吗?

job('example') {
    steps {
        copyArtifacts('upstream') {
            includePatterns('*.xml', '*.properties')
            excludePatterns('test.xml', 'test.properties')
            targetDirectory('files')
            flatten()
            optional()
            buildSelector {
                latestSuccessful(true)
            }
        }
    }
}

编辑似乎这可能已在谷歌组中的job-dsl修复

configure { project ->
  project / 'properties' / 'hudson.plugins.copyartifact.CopyArtifactPermissionProperty' / 'projectNameList' {
    'string' "*-foo"
  }
}

我认为他们可能已经改变了界面,虽然你需要提供明确的作业名称,但我没有得到插件,所以我不能检查

相关问题