File tree Expand file tree Collapse file tree 2 files changed +65
-0
lines changed
Expand file tree Collapse file tree 2 files changed +65
-0
lines changed Original file line number Diff line number Diff line change 1212jobs :
1313 lint :
1414 runs-on : ubuntu-latest
15+ permissions :
16+ contents : read
17+ pull-requests : read
1518 steps :
19+ # Enforce TPT-1234: prefix on PR titles, with the following exemptions:
20+ # - PRs labeled 'dependencies' (e.g. Dependabot PRs)
21+ # - PRs labeled 'hotfix' (urgent fixes that may not have a ticket)
22+ # - PRs labeled 'community-contribution' (external contributors without TPT tickets)
23+ # - PRs labeled 'ignore-for-release' (release PRs that don't need a ticket prefix)
24+ - name : Validate PR Title
25+ if : github.event_name == 'pull_request'
26+ uses : amannn/action-semantic-pull-request@v6
27+ with :
28+ types : |
29+ TPT-\d+
30+ requireScope : false
31+ # Override the default header pattern to allow hyphens and digits in the type
32+ # (e.g. "TPT-4298: Description"). The default pattern only matches word
33+ # characters (\w) which excludes hyphens.
34+ headerPattern : ' ^([\w-]+):\s?(.*)$'
35+ headerPatternCorrespondence : type, subject
36+ ignoreLabels : |
37+ dependencies
38+ hotfix
39+ community-contribution
40+ ignore-for-release
41+ env :
42+ GITHUB_TOKEN : ${{ github.token }}
43+
1644 - name : checkout repo
1745 uses : actions/checkout@v6
1846
Original file line number Diff line number Diff line change 1+ name : Clean Release Notes
2+
3+ on :
4+ release :
5+ types : [published]
6+
7+ jobs :
8+ clean-release-notes :
9+ runs-on : ubuntu-latest
10+ permissions :
11+ contents : write
12+
13+ steps :
14+ - name : Remove ticket prefixes from release notes
15+ uses : actions/github-script@v8
16+ with :
17+ script : |
18+ const release = context.payload.release;
19+
20+ let body = release.body;
21+
22+ if (!body) {
23+ console.log("Release body empty, nothing to clean.");
24+ return;
25+ }
26+
27+ // Remove ticket prefixes like "TPT-1234: " or "TPT-1234:"
28+ body = body.replace(/TPT-\d+:\s*/g, '');
29+
30+ await github.rest.repos.updateRelease({
31+ owner: context.repo.owner,
32+ repo: context.repo.repo,
33+ release_id: release.id,
34+ body: body
35+ });
36+
37+ console.log("Release notes cleaned.");
You can’t perform that action at this time.
0 commit comments