All workflows where it's remotely useful now trigger on a pull_request event when the workflow file itself is changed. This gives us basic sanity testing of changes to workflow files itself and reduces the need for manual tests in forks.
34 lines
1017 B
YAML
34 lines
1017 B
YAML
name: "Check whether nix files are parseable v2"
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- .github/workflows/nix-parse-v2.yml
|
|
pull_request_target:
|
|
|
|
permissions: {}
|
|
|
|
jobs:
|
|
get-merge-commit:
|
|
uses: ./.github/workflows/get-merge-commit.yml
|
|
|
|
tests:
|
|
name: nix-files-parseable-check
|
|
runs-on: ubuntu-24.04-arm
|
|
needs: get-merge-commit
|
|
if: "needs.get-merge-commit.outputs.mergedSha && !contains(github.event.pull_request.title, '[skip treewide]')"
|
|
steps:
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
with:
|
|
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
|
|
|
|
- uses: cachix/install-nix-action@526118121621777ccd86f79b04685a9319637641 # v31
|
|
with:
|
|
extra_nix_config: sandbox = true
|
|
nix_path: nixpkgs=channel:nixpkgs-unstable
|
|
|
|
- name: Parse all nix files
|
|
run: |
|
|
# Tests multiple versions at once, let's make sure all of them run, so keep-going.
|
|
nix-build ci -A parse --keep-going
|