colmena/.github/workflows/build.yml
Zhaofeng Li 31682ee13e .github: Only run build test on 2.4
No need to build on other versions as long as we test flake-compat.
2021-11-22 13:39:40 -08:00

71 lines
2.2 KiB
YAML

name: Build
on:
pull_request:
push:
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
nix:
- name: 2.4
url: https://releases.nixos.org/nix/nix-2.4/install
#- name: 2.3.16
# url: https://releases.nixos.org/nix/nix-2.3.16/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
- name: Enable Binary Cache
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') }}