mirror of
https://github.com/ChrisTitusTech/winutil
synced 2026-02-04 06:50:09 +00:00
45 lines
1.4 KiB
YAML
45 lines
1.4 KiB
YAML
name: Label PRs by Type of Change
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, edited, synchronize]
|
|
|
|
jobs:
|
|
label-pr:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
pull-requests: write
|
|
issues: write
|
|
contents: read # Often needed for github-script
|
|
steps:
|
|
- name: Check PR body for Type of Change
|
|
uses: actions/github-script@v7
|
|
with:
|
|
script: |
|
|
const prBody = context.payload.pull_request.body || '';
|
|
const labelsToAdd = [];
|
|
|
|
if (/\[x\]\s*New feature/i.test(prBody)) {
|
|
labelsToAdd.push('new feature');
|
|
}
|
|
if (/\[x\]\s*Bug fix/i.test(prBody)) {
|
|
labelsToAdd.push('bug');
|
|
}
|
|
if (/\[x\]\s*Documentation update/i.test(prBody)) {
|
|
labelsToAdd.push('documentation');
|
|
}
|
|
if (/\[x\]\s*Hotfix/i.test(prBody)) {
|
|
labelsToAdd.push('hotfix');
|
|
}
|
|
if (/\[x\]\s*UI\/UX improvement/i.test(prBody)) {
|
|
labelsToAdd.push('ui update');
|
|
}
|
|
|
|
if (labelsToAdd.length > 0) {
|
|
await github.rest.issues.addLabels({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
issue_number: context.payload.pull_request.number,
|
|
labels: labelsToAdd
|
|
});
|
|
} |