Files
qbz/.github/workflows/issue-platform-triage.yml
T

55 lines
1.6 KiB
YAML

name: Platform triage
on:
issues:
types: [opened]
permissions:
issues: write
jobs:
triage:
runs-on: ubuntu-latest
steps:
- name: Parse platform from issue body
id: platform
uses: actions/github-script@v9
with:
script: |
const body = context.payload.issue.body || '';
// GitHub issue forms render dropdowns as "### Label\n\nValue"
const platformMatch = body.match(/### Platform\s*\n\n(.+)/);
const platform = platformMatch ? platformMatch[1].trim() : '';
core.setOutput('value', platform);
- name: Label and assign macOS issues
if: steps.platform.outputs.value == 'macOS'
uses: actions/github-script@v9
with:
script: |
const issue = context.payload.issue.number;
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue,
labels: ['platform:macos']
});
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue,
assignees: ['afonsojramos']
});
- name: Label Linux issues
if: steps.platform.outputs.value == 'Linux'
uses: actions/github-script@v9
with:
script: |
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.issue.number,
labels: ['platform:linux']
});