colmena/.github/workflows/build.yml
Zhaofeng Li b4c832c24f .github: Disable flake check on macOS
Occasionally segfaults ¯\_(ツ)_/¯
2022-04-27 15:05:02 -07:00

75 lines
2.2 KiB
YAML

name: Build
on:
pull_request:
push:
jobs:
build:
strategy:
matrix:
os:
- ubuntu-latest
- macos-11
nix:
- name: 2.8.0
url: https://releases.nixos.org/nix/nix-2.8.0/install
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2.3.5
- uses: cachix/install-nix-action@v17
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') && runner.os != 'macOS' }}
- name: Build Colmena
run: nix build -L
if: ${{ !contains(matrix.nix.name, '2.3') }}
- name: Build and install Colmena with flake-compat
run: nix-env -if default.nix
- name: Build manual
run: nix build .#manual -L
if: ${{ !contains(matrix.nix.name, '2.3') }}
tests:
strategy:
matrix:
os:
- ubuntu-latest
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.8.0
url: https://releases.nixos.org/nix/nix-2.8.0/install
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2.3.5
- uses: cachix/install-nix-action@v17
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 }}'
- name: Set up pinned nixpkgs
run: echo "NIX_PATH=nixpkgs=$(nix-instantiate --eval flake-compat.nix -A defaultNix.inputs.nixpkgs.outPath | sed 's|\"||g')" >> $GITHUB_ENV
- 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') }}