sha*_*eoh 5 groovy jenkins-plugins jenkins-job-dsl
我正在将Jenkins的工作从手动配置转换为DSL,这意味着我正在尝试创建一个DSL脚本来创建今天的工作.
该作业当前已参数化,其中一个参数的类型为"用于复制工件的构建选择器".我可以在作业XML中看到它是copyartifact插件,特别是我需要使用BuildSelectorParameter.
然而,Jenkins DSL API没有使用此插件设置参数的指导 - 它只是帮助使用它来创建构建步骤,这不是我需要的.
我也无法在API中的参数选项下找到任何与此相关的内容.
我想在DSL种子脚本中包含一些内容,它将在生成的作业中创建一个与图像中的参数匹配的参数.
如果我需要使用配置块,那么欢迎使用任何提示,因为对于初学者来说,这方面的文档是没有用的.
除了使用配置块之外,我没有找到其他方法来设置构建选择器参数。这是我用来设置它的:
freeStyleJob {
...
configure { project ->
def paramDefs = project / 'properties' / 'hudson.model.ParametersDefinitionProperty' / 'parameterDefinitions'
paramDefs << 'hudson.plugins.copyartifact.BuildSelectorParameter'(plugin: "copyartifact@1.38.1") {
name('BUILD_SELECTOR')
description('The build number to deploy')
defaultSelector(class: 'hudson.plugins.copyartifact.SpecificBuildSelector') {
buildNumber()
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
为了实现这一目标,我使用构建选择器参数手动创建了一个作业。然后在jenkins下查找job的XML配置来查看相关部分,在我的例子中:
<project>
...
<properties>
<hudson.model.ParametersDefinitionProperty>
<parameterDefinitions>
...
<hudson.plugins.copyartifact.BuildSelectorParameter plugin="copyartifact@1.38.1"
<name>BUILD_SELECTOR</name>
<description></description>
<defaultSelector class="hudson.plugins.copyartifact.SpecificBuildSelector">
<buildNumber></buildNumber>
</defaultSelector>
</hudson.plugins.copyartifact.BuildSelectorParameter>
</parameterDefinitions>
</hudson.model.ParametersDefinitionProperty>
</properties>
...
</project>
Run Code Online (Sandbox Code Playgroud)
要使用该configure
子句复制该内容,您需要了解以下内容:
job
节点。/
运算符将返回给定节点的节点的子节点,如果不存在则创建该子节点。<<
运算符会将作为右侧操作数给出的节点附加到左侧操作数。myNodeName(attrributeName: 'attributeValue')
归档时间: |
|
查看次数: |
3793 次 |
最近记录: |