<div dir="ltr"><div>Hi Rob,</div><div>Here is an example github action building toybox and running tests on MacOS, Ubuntu and Alpine. It builds nightly at 2:00am and on each push and pull request. While I'm not a huge fan of proprietary CI systems GitHub isn't too invasive and supports MacOS. You can see an example of the output at <a href="https://github.com/emolitor/toybox/actions">https://github.com/emolitor/toybox/actions</a></div><div><br></div><div>diff --git a/.github/workflows/toybox.yml b/.github/workflows/toybox.yml<br>new file mode 100644<br>index 00000000..cd18e7fe<br>--- /dev/null<br>+++ b/.github/workflows/toybox.yml<br>@@ -0,0 +1,53 @@<br>+name: toybox CI<br>+<br>+on:<br>+  schedule:<br>+    - cron:  '0 2 * * *'<br>+  push:<br>+    branches: [ master ]<br>+  pull_request:<br>+    branches: [ master ]<br>+<br>+jobs:<br>+  MacOS-10_15:<br>+    runs-on: macos-10.15<br>+<br>+    steps:<br>+    - uses: actions/checkout@v2<br>+    - name: Setup<br>+      run: brew install gnu-sed<br>+    - name: Configure<br>+      run: make macos_defconfig<br>+    - name: Build<br>+      run: make<br>+    - name: Test<br>+      run: make tests<br>+<br>+  Ubuntu-20_04:<br>+    runs-on: ubuntu-20.04<br>+<br>+    steps:<br>+    - uses: actions/checkout@v2<br>+    - name: Setup<br>+      run: sudo apt-get install build-essential<br>+    - name: Configure<br>+      run: make defconfig<br>+    - name: Build<br>+      run: make<br>+    - name: Test<br>+      run: make tests<br>+<br>+  Alpine-3_12:<br>+    runs-on: ubuntu-20.04<br>+    container: alpine:3.12<br>+<br>+    steps:<br>+    - uses: actions/checkout@v2<br>+    - name: Setup<br>+      run: apk add build-base linux-headers diffutils findutils bash<br>+    - name: Configure<br>+      run: make defconfig<br>+    - name: Build<br>+      run: make<br>+    - name: Test<br>+      run: make tests<br></div></div>