use mise for ci #28
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| name: Test (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - uses: jdx/mise-action@v3 | |
| - name: Run tests | |
| run: zig build test --summary all | |
| - name: Check compilation | |
| run: zig build check | |
| fmt-check: | |
| name: Format check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: jdx/mise-action@v3 | |
| - name: Check formatting | |
| run: zig fmt --check --exclude tests/golden src/ tests/ bench/ tools/ | |
| bench-check: | |
| name: Benchmark regression check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - uses: jdx/mise-action@v3 | |
| - name: Run benchmark regression checks | |
| run: zig build bench-check | |
| wasm-build: | |
| name: WASM build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - uses: jdx/mise-action@v3 | |
| - name: Build WASM host | |
| run: zig build wasm-host | |
| release-build: | |
| name: Release build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - uses: jdx/mise-action@v3 | |
| - name: Build ReleaseSafe | |
| run: zig build -Doptimize=ReleaseSafe |