name: build on: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: checks-matrix: runs-on: ubuntu-latest outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/nix-installer-action@main - id: set-matrix name: Generate Nix Matrix run: | set -Eeu matrix="$(nix eval --json '.#githubActions.matrix')" echo "matrix=$matrix" >> "$GITHUB_OUTPUT" checks-build: needs: checks-matrix runs-on: ${{ matrix.os }} strategy: matrix: ${{fromJSON(needs.checks-matrix.outputs.matrix)}} steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/nix-installer-action@main - run: nix build -L '.#${{ matrix.attr }}' codecov: runs-on: ubuntu-latest permissions: id-token: "write" contents: "read" steps: - uses: actions/checkout@v4 - uses: DeterminateSystems/nix-installer-action@main - name: Run codecov run: nix build .#checks.x86_64-linux.ndarray-math-llvm-cov - name: Upload coverage reports to Codecov uses: codecov/codecov-action@v4.0.1 with: flags: unittests name: codecov-ndarray-math fail_ci_if_error: true token: ${{ secrets.CODECOV_TOKEN }} files: ./result verbose: true