Skip to content

Matrix Build

Matrix Build #348

Workflow file for this run

name: Matrix Build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
schedule:
- cron: 0 9 * * *
jobs:
test:
strategy:
fail-fast: false
matrix:
### Comptime tests and windows builds can't run due memory limitation
#os: [ubuntu-latest, macos-latest, windows-latest]
#comptime: [true, false]
os: [ubuntu-latest, macos-latest]
comptime: [false]
include:
#- os: windows-latest
# crlf: fix
- os: ubuntu-latest
comptime: false
coverage: -Dtest-coverage
- os: macos-latest
comptime: true
runs-on: ${{matrix.os}}
steps:
- name: Force Line Endings for Windows
if: ${{ matrix.crlf }}
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout
uses: actions/checkout@v3
- name: Setup Zig
uses: goto-bus-stop/setup-zig@v1
with:
version: 0.10.0
- name: Download kcov
if: ${{ matrix.os == 'ubuntu-latest' && matrix.comptime == false }}
run: |
sudo apt-get install -y kcov
- name: Run Tests
run: |
zig version
zig build test ${{ matrix.coverage }} -Dcomptime-tests=${{ matrix.comptime }} -fstage1
- name: Upload Codecov
if: ${{ matrix.os == 'ubuntu-latest' && matrix.comptime == false }}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: |
curl -Os https://uploader.codecov.io/latest/linux/codecov
chmod +x codecov
./codecov -t ${CODECOV_TOKEN}