about summary refs log tree commit diff
path: root/.github
diff options
context:
space:
mode:
authorJanne Heß <janne@hess.ooo>2024-01-16 09:31:27 +0100
committerJanne Heß <janne@hess.ooo>2024-01-16 09:31:27 +0100
commitd722b456e808e463d0bfdfe11dd9497511ef23c3 (patch)
treefb3386b66af448ef04ff64609e8f70138853f456 /.github
parentf7a175776eeb7dda707d88d7ae7b0621727a4543 (diff)
ci: Only check nix files when any nix file changed
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/nix-parse.yml5
1 files changed, 5 insertions, 0 deletions
diff --git a/.github/workflows/nix-parse.yml b/.github/workflows/nix-parse.yml
index 8b2ef0b8da497..36560ae22558e 100644
--- a/.github/workflows/nix-parse.yml
+++ b/.github/workflows/nix-parse.yml
@@ -21,10 +21,14 @@ jobs:
           repos/NixOS/nixpkgs/pulls/${{github.event.number}}/files --paginate \
           | jq '.[] | select(.status != "removed" and (.filename | endswith(".nix"))) | .filename' \
           > "$HOME/changed_files"
+        if [[ -s "$HOME/changed_files" ]]; then
+          echo "CHANGED_FILES=$HOME/changed_files" > "$GITHUB_ENV"
+        fi
     - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
       with:
         # pull_request_target checks out the base branch by default
         ref: refs/pull/${{ github.event.pull_request.number }}/merge
+      if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }}
     - uses: cachix/install-nix-action@7ac1ec25491415c381d9b62f0657c7a028df52a7 # v24
     - name: Parse all changed or added nix files
       run: |
@@ -33,3 +37,4 @@ jobs:
           out="$(nix-instantiate --parse "$file")" || { echo "$out" && ret=1; }
         done < "$HOME/changed_files"
         exit "$ret"
+      if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }}