Hi
I put together a matrix execution strategy which allows greater control
than the default strategy.
It will run either a groovy script, as entered or a script from an absolute
path or from the workspace.
This is probably best suited to dynamically built axis.
There are a couple of problems though.
I'd like to move the combination filter box into the default plugin box if
possible
The plugin doesn't display correctly the first time in for some reason
Some of the methods have been pulled directly form the default strategy so
perhaps could be refactored
I think the name could be better
This is an example script it would use where jobs will be executed in axis2
order and axis2 = z and axis1 = b skipped
combinations.each{
if(it.axis2 == 'z')
return
if(it.axis1 == 'b')
return
result[it.axis2] = result[it.axis2] ?: []
result[it.axis2] << it
}
result
where combinations is a list of all the combinations
result is a TreeMap<String, List<Combination>> and is expected to be
returned from the script
There are other bindings passed in (workspace,
Jenkins.instance, MatrixBuild.MatrixBuildExecution execution)
The map entries will be executed in parallel in the natural order and a
failure will stop the next set, but allow that phase to finish
I wrote it with the gradle-jpi-plugin in groovy
https://github.com/JeremyMarshall/groovier-matrix-project-plugin
--
You received this message because you are subscribed to the Google Groups
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.