name: CI on: create: push: branches: master paths: - '**.zig' pull_request: schedule: - cron: "0 13 * * *" workflow_dispatch: concurrency: group: ci-${{ github.ref }} cancel-in-progress: true jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: goto-bus-stop/setup-zig@v2 with: version: master - run: zig fmt --check *.zig test-in-memory: strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, macos-12] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 with: submodules: true - uses: goto-bus-stop/setup-zig@v2 with: version: master - uses: actions/cache@v4 if: ${{ matrix.os != 'windows-latest' }} with: path: | zig-cache ~/.cache/zig key: ${{ runner.os }}-${{ matrix.os }}-zig-${{ github.sha }} restore-keys: ${{ runner.os }}-${{ matrix.os }}-zig- - name: Run Tests in memory run: zig build test -Dci=true -Din_memory=true --summary all - name: Build the example zigcrypto loadable extension run: zig build zigcrypto - name: Test the zigcrypto loadable extension run: ./zig-out/bin/zigcrypto-test