[Vm-dev] condensing Travis build matrix

Ben Coman btc at openinworld.com
Sun Jan 20 04:37:21 UTC 2019


As I commenced looking into building Windows on Travis, I was a bit
overwhelmed by the prospect of later needing to add a "windows" axis to the
".travis.yml"  build matrix.
I find it hard to determine the coverage of the current arrangement where
all the jobs are individually defined.

Also I had noticed that the build overall takes longer with smaller stages
since
while waiting for the last job of a stage you don't have five parallel jobs
running.

So I went digging and devised an alternate arrangement such that:
* full coverage matrix auto generated
* production jobs pulled from the coverage matrix into their own stage up
top
* order of stages can be changed by a single line
* allow_failures can be changed for a whole stage by a single line
* sista and lowcode grouped into one 'experimental' stage allowed to fail
* aliases used to not-repeat-oneself (it was painful in the exclude sections
  coming to terms with 'env:' definitions needing to match exact whitespace)
* when it comes time to add coverage for Windows, this can be done with a
single line

I'd love some feedback on it...
https://github.com/bencoman/opensmalltalk-vm/blob/1358adf/.travis.yml

Here are the jobs it produces...
https://travis-ci.org/bencoman/opensmalltalk-vm/builds/481940940

and here are the jobs produced by un-commenting line 80 to add coverage for
windows...
https://travis-ci.org/bencoman/opensmalltalk-vm/builds/481941445

cheers -ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20190120/1a072172/attachment.html>


More information about the Vm-dev mailing list