Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/workflows/ci-skipped.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# `ci.yaml` skips PRs that only touch the paths below, which would leave its required
# `conclusion` check pending forever. This reports `conclusion` for those PRs instead.
# Keep `paths` in sync with `paths-ignore` in `ci.yaml`.
on:
pull_request:
paths:
- '.github/workflows/latest-deps.yaml'

name: Continuous integration (skipped)

permissions:
pull-requests: read

jobs:
conclusion:
runs-on: ubuntu-latest
steps:
- name: Check that only CI-ignored files changed
env:
GH_TOKEN: ${{ github.token }}
IGNORED: |
.github/workflows/latest-deps.yaml
run: |
other=$(gh api --paginate "repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/files" --jq '.[].filename' \
| grep -vxF -f <(printf '%s' "$IGNORED") || true)
if [ -n "$other" ]; then
echo "This PR also changes files that ci.yaml checks, so its conclusion is the one that counts:"
echo "$other"
exit 1
fi
echo "Only files ignored by ci.yaml changed."
Loading