Skip to content

Commit ff7cc65

Browse files
authored
Split PR CI into hygiene and code workflows (#130)
Separate hygiene jobs into pr-repo-hygiene.yml (always runs) and add path filters to pr.yml so build/test jobs only run on code changes. Markdown-only, YAML-only, Dockerfile-only, or CI-Docker-image-only PRs now skip the build/test matrix and only run hygiene checks.
1 parent e2cd284 commit ff7cc65

File tree

2 files changed

+45
-26
lines changed

2 files changed

+45
-26
lines changed
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: 9 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
name: PR
22

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

513
concurrency:
614
group: pr-${{ github.ref }}
@@ -10,31 +18,6 @@ permissions:
1018
packages: read
1119

1220
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-
3821
vs-release-ponyc-linux:
3922
name: Test against recent ponyc release on Linux
4023
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)