Skip to content
Snippets Groups Projects
Commit 01b9fdb8 authored by Brandon S. Allbery's avatar Brandon S. Allbery Committed by Mikolaj
Browse files

add missing sdist skip job

There's little point in having a skip-on-docs trigger if there's
no alternative, cf. the comment in validate.yml.
parent 8815e0a3
No related branches found
No related tags found
No related merge requests found
name: Check sdist Skip
# This Workflow is special and contains a workaround for a known limitation of GitHub CI.
#
# The problem: We don't want to run the "check sdist" jobs on PRs which contain only changes
# to the docs, since these jobs take a long time to complete without providing any benefit.
# We therefore use path-filtering in the workflow triggers for the check sdist jobs, namely
# "paths-ignore: doc/**". But the "Check sdist post job" is a required job, therefore a PR cannot
# be merged unless the "Bootstrap post job" completes succesfully, which it doesn't do if we
# filter it out.
#
# The solution: We use a second job with the same name which always returns the exit code 0.
# The logic implemented for "required" workflows accepts if 1) at least one job with that name
# runs through, AND 2) If multiple jobs of that name exist, then all jobs of that name have to
# finish successfully.
on:
push:
paths:
- 'doc/**'
- '**/README.md'
- 'CONTRIBUTING.md'
- "changelog.d/**"
# only top level for these, because various test packages have them too
- "*/ChangeLog.md"
- "*/changelog.md"
- "release-notes/**"
branches:
- master
pull_request:
paths:
- 'doc/**'
- '**/README.md'
- 'CONTRIBUTING.md'
- "changelog.d/**"
- "*/ChangeLog.md"
- "*/changelog.md"
- "release-notes/**"
release:
types:
- created
jobs:
check-sdist-post-job:
if: always()
name: Check sdist post job
runs-on: ubuntu-latest
steps:
- run: exit 0
......@@ -89,3 +89,17 @@ jobs:
echo No matching bootlib Cabal version to test against.
exit 0
fi
check-sdist-post-job:
if: always()
name: Check sdist post job
runs-on: ubuntu-latest
# IMPORTANT! Any job added to the workflow should be added here too
needs: [dogfood-sdists]
steps:
- run: |
echo "jobs info: ${{ toJSON(needs) }}"
- if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
run: exit 1
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment