我想从管道作业开始矩阵构建,但是我只想构建一个Axis。
我尝试了这个:
build job: "Build_Android_Matrix", propagate: false, wait: true,
parameters: [[$class: 'StringParameterValue', name: 'branch', value: "$branch"],
[$class: 'BooleanParameterValue', name: 'production', value: true],
[$class: 'BooleanParameterValue', name: 'beta', value: false],
[$class: 'MatrixCombinationsParameterValue', name: 'paramFilter', description: null, combinations: ['buildType=Release']]]
我有2个轴,
flavor
和buildType
,paramFilter
是矩阵组合参数。矩阵构建从所有作业参数开始,但由于矩阵组合选择为空,因此不构建任何东西。
我也尝试过
['buildType==Release']
和['buildType=="Release"']
,但是我总是得到相同的结果。我也尝试过:
build job: "Build_Android_Matrix", propagate: false, wait: true, parameters: [
new hudson.plugins.matrix_configuration_parameter.MatrixCombinationsParameterValue
("paramFilter",
null,
['buildType=Release'])
]
但失败,因为
RejectedAccessException: Scripts not permitted to use new
。我几乎可以肯定,我没有以正确的方式提供组合,但是我不知道还能尝试什么。
更新
在Christopher Orr回答之后,我尝试设置如下参数:
[$class: 'MatrixCombinationsParameterValue', name: 'paramFilter', description: null, combinations: ['buildType=Release,flavor=Italy']]]
以此作为我的斧头:
而且没有用,因为我忘记了我也有一个从轴,也必须指定它。
所以这对我有用:
[$class: 'MatrixCombinationsParameterValue', combinations: ["buildType=Release,flavor=Italy,label=android"], description: '', name: 'paramFilter']
最佳答案
当从Web UI使用Matrix Combinations插件时,需要显式指定要运行的所有组合。因此,在Pipeline中,您需要执行相同的操作,例如:
combinations: ['buildType=Release,flavor=beta',
'buildType=Release,flavor=production']
参数的顺序很重要。