Skip to content

ci: Pin all inputs via subflake and nixci #601

ci: Pin all inputs via subflake and nixci

ci: Pin all inputs via subflake and nixci #601

Workflow file for this run

name: "Run test suite"
on:
pull_request:
types: [opened, synchronize, reopened]
push:
branches:
- 'master'
- 'ci*' # Allow testing CI fixes without opening a PR
permissions:
contents: read
jobs:
tests-pass:
name: all systems go
runs-on: ubuntu-latest
if: ${{ always() && contains(needs.*.result, 'failure') }}
steps:
- run: exit 1
needs:
- check-darwin
- check-dead-code
- check-fmt
- tests
tests:
strategy:
# Allow other jobs to finish building and cache properly before bailing
fail-fast: false
matrix:
include:
# Latest and greatest release of Nix
- nixci: '.#nixci-checks'
install_url: https://nixos.org/nix/install
# The 23.05 branch ships with Nix 2.13.3
- nixci: '.#nixci-checks-stable'
install_url: https://releases.nixos.org/nix/nix-2.13.3/install
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: cachix/install-nix-action@v22
with:
install_url: ${{ matrix.install_url }}
- uses: cachix/cachix-action@v12
with:
name: crane
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: all tests
# FIXME: unpin this after 0.1.4+ is available in nixpkgs
run: nix run github:ipetkov/nixci/9d8f45b4db2829ce863a01e421600cc40d46db04#default -- '${{ matrix.nixci }}' -- -L
- name: extra tests
run: nix develop --accept-flake-config --command ./extra-tests/test.sh
check-darwin:
runs-on: macos-12
steps:
- uses: actions/checkout@v3
- uses: cachix/install-nix-action@v22
- uses: cachix/cachix-action@v12
with:
name: crane
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: examples
# FIXME: unpin this after 0.1.4+ is available in nixpkgs
run: nix run github:ipetkov/nixci/9d8f45b4db2829ce863a01e421600cc40d46db04#default -- .#nixci-darwin -- -L
check-dead-code:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: cachix/install-nix-action@v22
- uses: cachix/cachix-action@v12
with:
name: deadnix
- name: check for dead code
run: nix run github:astro/deadnix -- .
check-fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: cachix/install-nix-action@v22
- name: check formatting
run: nix fmt --accept-flake-config -- --check .