Azure Pipelines is free for open source projects as of 2018. They have CI images for Linux, MacOS and of course several Windows configurations. Several images run in parallel, and generally the instances are quite fast, including MacOS.
- Start Pipelines free with GitHub makes a one-time connection to GitHub. Azure can also connect to general Git repos hosted wherever.
- Each GitHub repo corresponds to an Azure Project. Many people don't use all the extra features Azure provides for free, just the Azure Pipelines.
- Create an azure-pipelines.yml. This can be edited from the Azure webpage, hence Azure asking for pre-repo GitHub write permissions. DO NOT name this with .yaml, as Azure won't detect it automatically, and you'll have to manually reconfigure each project you use .yaml in. Just use .yml suffix, it will save needless trouble.