Skip to content

Commit 7d36cf6

Browse files
authored
Split PR CI into hygiene and code workflows (#53)
Markdown-only, YAML-only, or Dockerfile-only changes don't need to run the full build/test matrix. Separate superlinter and verify-changelog into pr-repo-hygiene.yml (always runs) and add path filters to pr.yml so build/test jobs are skipped for non-code changes.
1 parent 4d13ca4 commit 7d36cf6

2 files changed

Lines changed: 44 additions & 26 deletions

File tree

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Repository Hygiene
2+
3+
on: pull_request
4+
5+
concurrency:
6+
group: pr-repo-hygiene-${{ github.ref }}
7+
cancel-in-progress: true
8+
9+
permissions:
10+
packages: read
11+
12+
jobs:
13+
superlinter:
14+
name: Lint bash, docker, markdown, and yaml
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v4.1.1
18+
- name: Lint codebase
19+
uses: docker://github/super-linter:v3.8.3
20+
env:
21+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
22+
VALIDATE_ALL_CODEBASE: true
23+
VALIDATE_BASH: true
24+
VALIDATE_DOCKERFILE: true
25+
VALIDATE_MD: true
26+
VALIDATE_YAML: true
27+
28+
verify-changelog:
29+
name: Verify CHANGELOG is valid
30+
runs-on: ubuntu-latest
31+
steps:
32+
- uses: actions/checkout@v4.1.1
33+
- name: Verify CHANGELOG
34+
uses: docker://ghcr.io/ponylang/changelog-tool:release
35+
with:
36+
args: changelog-tool verify

.github/workflows/pr.yml

Lines changed: 8 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
name: PR
22

3-
on: pull_request
3+
on:
4+
pull_request:
5+
paths:
6+
- '**'
7+
- '!**/*.md'
8+
- '!**/*.yml'
9+
- '!**/*.yaml'
10+
- '.github/workflows/pr.yml'
411

512
concurrency:
613
group: pr-${{ github.ref }}
@@ -10,31 +17,6 @@ permissions:
1017
packages: read
1118

1219
jobs:
13-
superlinter:
14-
name: Lint bash, docker, markdown, and yaml
15-
runs-on: ubuntu-latest
16-
steps:
17-
- uses: actions/checkout@v4.1.1
18-
- name: Lint codebase
19-
uses: docker://github/super-linter:v3.8.3
20-
env:
21-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
22-
VALIDATE_ALL_CODEBASE: true
23-
VALIDATE_BASH: true
24-
VALIDATE_DOCKERFILE: true
25-
VALIDATE_MD: true
26-
VALIDATE_YAML: true
27-
28-
verify-changelog:
29-
name: Verify CHANGELOG is valid
30-
runs-on: ubuntu-latest
31-
steps:
32-
- uses: actions/checkout@v4.1.1
33-
- name: Verify CHANGELOG
34-
uses: docker://ghcr.io/ponylang/changelog-tool:release
35-
with:
36-
args: changelog-tool verify
37-
3820
vs-ponyc-release:
3921
name: Test against recent ponyc release
4022
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)