64 lines
2.2 KiB
YAML
64 lines
2.2 KiB
YAML
name: "CI"
|
|
on:
|
|
pull_request:
|
|
push:
|
|
jobs:
|
|
|
|
checks:
|
|
strategy:
|
|
matrix:
|
|
check:
|
|
- nixpkgs-fmt
|
|
- deadnix
|
|
- nur
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
- uses: cachix/install-nix-action@v22
|
|
- name: Check ${{ matrix.check }}
|
|
# Depends on nixos/nix#7759 to simply `nix flake check`
|
|
run: nix run .#checks.$(nix eval --raw --impure --expr "builtins.currentSystem").${{ matrix.check }}
|
|
|
|
build-and-update:
|
|
strategy:
|
|
matrix:
|
|
# Set this to notify the global nur package registry that changes are
|
|
# available.
|
|
#
|
|
# The repo name as used in
|
|
# https://github.com/nix-community/NUR/blob/master/repos.json
|
|
nurRepo:
|
|
- xeals
|
|
# Set this to cache your build results in cachix for faster builds
|
|
# in CI and for everyone who uses your cache.
|
|
#
|
|
# Format: Your cachix cache host name without the ".cachix.org" suffix.
|
|
# Example: mycache (for mycache.cachix.org)
|
|
#
|
|
# For this to work, you also need to set the CACHIX_SIGNING_KEY secret
|
|
# in your repository settings in Github found at https://github.com/<your_githubname>/nur-packages/settings/secrets
|
|
cachixName:
|
|
- xeals
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v3
|
|
- name: Install nix
|
|
uses: cachix/install-nix-action@v22
|
|
- name: Show nixpkgs version
|
|
run: nix eval --impure --expr '(import ./flake-compat.nix { src = ./.; }).lib.version'
|
|
- name: Setup cachix
|
|
uses: cachix/cachix-action@v12
|
|
if: ${{ matrix.cachixName != '<YOUR_CACHIX_NAME>' }}
|
|
with:
|
|
name: ${{ matrix.cachixName }}
|
|
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
|
|
- name: Check nix
|
|
run: nix flake check --show-trace
|
|
- name: Build nix packages
|
|
run: nix develop .#ci -c nix-build-uncached ci.nix -A cacheOutputs
|
|
- name: Trigger NUR update
|
|
if: ${{ matrix.nurRepo != '<YOUR_REPO_NAME>' }}
|
|
run: curl -XPOST "https://nur-update.nix-community.org/update?repo=${{ matrix.nurRepo }}"
|