Azure Pipelines is free for open source projects. Azure CI images exist for Linux, MacOS and Windows. 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 a top-level repo file “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.