groovy – 使用Jenkins DSL添加参数“为复制工件构建选择器”
我正在将Jenkins的工作从手动配置转换为DSL,这意味着我正在尝试创建一个DSL脚本来创建今天的工作.
该作业当前已参数化,其中一个参数的类型为“用于复制工件的构建选择器”.我可以在作业XML中看到它是copyartifact插件,特别是我需要使用BuildSelectorParameter. 然而,Jenkins DSL API没有使用此插件设置参数的指导 – 它只是帮助使用它来创建构建步骤,这不是我需要的. 我也无法在API中的参数选项下找到任何与此相关的内容. 我想在DSL种子脚本中包含一些内容,它将在生成的作业中创建一个与图像中的参数匹配的参数. parameter 如果我需要使用配置块,那么欢迎使用任何提示,因为对于初学者来说,这方面的文档是没有用的. 解决方法
我找不到其他方法来设置构建选择器参数,但使用配置块.这是我以前设置的:
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() } } } } 为了实现这一点,我使用构建选择器参数手动创建了一个作业.然后在jenkins下查找作业的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> 要使用configure子句复制它,您需要了解以下内容: > configure子句的第一个参数是作业节点.>使用/运算符将返回具有给定节点的节点的子节点,如果它不存在则创建.>使用<<运算符将向左侧操作数附加作为右侧操作数给出的节点.>创建节点时,可以在构造函数中为其指定属性,如:myNodeName(attrributeName:’attributeValue’)>您可以将lambda传递给新节点并使用它来填充其内部结构. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |