name: Build on: pull_request: push: jobs: build: runs-on: ubuntu-latest strategy: matrix: nix: - name: 2.3.16 url: https://releases.nixos.org/nix/nix-2.3.16/install - name: 2.4 url: https://releases.nixos.org/nix/nix-2.4/install - name: 2.5pre url: https://github.com/numtide/nix-unstable-installer/releases/download/nix-2.5pre20211026_5667822/install steps: - uses: actions/checkout@v2.3.5 - uses: cachix/install-nix-action@v15 with: install_url: ${{ matrix.nix.url }} extra_nix_config: | experimental-features = nix-command flakes - uses: cachix/cachix-action@v10 with: name: colmena authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - run: nix flake check if: ${{ !contains(matrix.nix.name, '2.3') }} - name: Build Colmena run: nix build -L if: ${{ !contains(matrix.nix.name, '2.3') }} - name: Build Colmena with flake-compat run: nix-build - name: Build manual run: nix build .#manual -L if: ${{ !contains(matrix.nix.name, '2.3') }} tests: runs-on: ubuntu-latest strategy: matrix: nix: - name: 2.3.16 url: https://releases.nixos.org/nix/nix-2.3.16/install - name: 2.4 url: https://releases.nixos.org/nix/nix-2.4/install - name: 2.5pre url: https://github.com/numtide/nix-unstable-installer/releases/download/nix-2.5pre20211026_5667822/install steps: - uses: actions/checkout@v2.3.5 - uses: cachix/install-nix-action@v15 with: install_url: ${{ matrix.nix.url }} extra_nix_config: | experimental-features = nix-command flakes - uses: cachix/cachix-action@v10 with: name: colmena authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' - run: nix-shell --run "cargo test" if: ${{ !contains(matrix.nix.name, '2.3') }} - run: nix-shell --run "cargo test -- --skip flake" if: ${{ contains(matrix.nix.name, '2.3') }}