nix-config/.github/workflows/ci.yml
Donovan Glover 634208253a
ci: ensure packages build successfully
Helps prevent broken URLs from breaking the build.
2024-11-06 15:36:47 -05:00

56 lines
1.6 KiB
YAML

name: ci
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
name: nix build packages/*.nix
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- run: basename -s .nix packages/* | sed 's/.*/.#&/' | xargs nix build
test:
name: nix flake check --all-systems
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
with:
extra_nix_config: "extra-platforms = aarch64-linux"
- run: nix flake check --all-systems
format:
name: nix fmt -- --check **/*.nix
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- run: nix fmt -- --check **/*.nix
example:
name: nix flake check ./example
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- run: cp ./hosts/laptop/hardware-configuration.nix ./example/hardware-configuration.nix
- run: git add .
- run: nix flake check ./example --no-write-lock-file --override-input nix-config "git+file://$(pwd | sed -e 's/\s/%20/g')?shallow=1"
statix:
name: statix check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- run: nix run nixpkgs#statix check
nixd:
name: nixf-tidy --variable-lookup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- run: nix run .#nixf-tidy