
On 2019-06-22 14:05, Amber Brown wrote:
On 22/6/19 9:59 am, Kyle Altendorf wrote:
Hmm... I'm running Python inside a build to generate the matrix for that build (with a yaml file for a pipeline). Now I'm curious what matrixing is being used that isn't supported yet. But perhaps it isn't worth bothering to work through.
Cheers, -kyle
It now says:
#Multi-configuration and multi-agent job options are not exported to YAML. Configure these options using documentation guidance: https://docs.microsoft.com/vsts/pipelines/process/phases
So maybe it'd work? Anyone want to volunteer to see? :)
I don't know what our setup is now so I can't really compare. Do we have a matrix built from a few axes? Like Windows/macOS and py2.7/3.7 generating 4 builds for us? AFAIK that isn't yet supported. https://github.com/microsoft/azure-pipelines-yaml/issues/20 But, you can certainly write a job and list out the four (or whatever) parameter sets you want it to be run against. For romp I went ahead and implemented a little Python cross matrixer which runs as the first job and outputs JSON. It's output is used as the matrix def for another job which does whatever it's supposed to. So there are options anywhere from hand-coded YAML to build-parameter-dependent on-the-fly-generated JSON to configure a 'matrix', and whatever in between. I'm guessing at present we'd be satisfied with just hand-coded YAML parameter sets. Maybe if we moved all platforms etc to Azure we'd like a generated matrix (either a manual script when the matrix definition is changed or in-build generation though that of course adds a bit of build time). Honestly, I would expect to usually want exceptions to any basic matrix cross-producting system so just defining it with regular Python code from the get-go has some upsides. I need to tweak exttrs a bit and romp has a bit of a specialized purpose but they are the two examples I have. https://github.com/altendky/exttr/blob/60aa5d6e9f04631b8e86552620f2d9cd2a0a3... https://github.com/altendky/romp/blob/0b05a7830ba1b02e503dd0004ffdce5e0ae316... After all that... is this actually what we are talking about when it comes to matrixing? Cheers, -kyle