Improve unit test path filtering rules (#2052)
* Improve path-filtering rules on unit test action See docs about how jobs that are skipped still report "success", which is necessary for jobs that are required to succeed based on branch protection rules. https://docs.github.com/en/actions/using-jobs/using-conditions-to-control-job-execution * Code must be checked out for paths-filter to run * Only run on default pull request events Defaults are that it will run when a PR is opened, reopened, or synchronized (new commits pushed).
This commit is contained in:
47
.github/workflows/nodejs.yml
vendored
47
.github/workflows/nodejs.yml
vendored
@ -2,31 +2,36 @@
|
||||
name: Node CI
|
||||
|
||||
on:
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- '**/*.asciidoc'
|
||||
- '**/*.txt'
|
||||
- 'docs/**'
|
||||
- '.ci/**'
|
||||
- '.buildkite/**'
|
||||
- 'scripts/**'
|
||||
- 'catalog-info.yaml'
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/*.md'
|
||||
- '**/*.asciidoc'
|
||||
- '**/*.txt'
|
||||
- 'docs/**'
|
||||
- '.ci/**'
|
||||
- '.buildkite/**'
|
||||
- 'scripts/**'
|
||||
- 'catalog-info.yaml'
|
||||
pull_request: {}
|
||||
|
||||
jobs:
|
||||
paths-filter:
|
||||
name: Detect files changed
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
skip: '${{ steps.changes.outputs.skip }}'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: dorny/paths-filter/@v2.11.1
|
||||
id: changes
|
||||
with:
|
||||
filters: |
|
||||
skip:
|
||||
- '**/*.md'
|
||||
- '**/*.asciidoc'
|
||||
- '**/*.txt'
|
||||
- 'docs/**'
|
||||
- '.ci/**'
|
||||
- '.buildkite/**'
|
||||
- 'scripts/**'
|
||||
- 'catalog-info.yaml'
|
||||
|
||||
test:
|
||||
name: Test
|
||||
runs-on: ${{ matrix.os }}
|
||||
needs: paths-filter
|
||||
# only run if files not in `skip` filter were changed
|
||||
if: needs.paths-filter.outputs.skip != 'true'
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@ -35,7 +40,7 @@ jobs:
|
||||
os: [ubuntu-latest, windows-latest, macOS-latest]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v3
|
||||
|
||||
Reference in New Issue
Block a user