mirror of https://github.com/python/cpython
Add workflow for automatic issue headers (#108054)
We don't get the "Bug report" and "Feature or enhancement" titles anymore, with the new issue forms. This brings them back!
This commit is contained in:
parent
8a19f225b9
commit
4cb08188e8
|
@ -0,0 +1,53 @@
|
||||||
|
name: Add issue header
|
||||||
|
# Automatically edits an issue's descriptions with a header,
|
||||||
|
# one of:
|
||||||
|
#
|
||||||
|
# - Bug report
|
||||||
|
# - Crash report
|
||||||
|
# - Feature or enhancement
|
||||||
|
|
||||||
|
on:
|
||||||
|
issues:
|
||||||
|
types:
|
||||||
|
# Only ever run once
|
||||||
|
- opened
|
||||||
|
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
add-header:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
issues: write
|
||||||
|
steps:
|
||||||
|
- uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
# language=JavaScript
|
||||||
|
script: |
|
||||||
|
// https://devguide.python.org/triage/labels/#type-labels
|
||||||
|
const HEADERS = new Map([
|
||||||
|
['type-bug', 'Bug report'],
|
||||||
|
['type-crash', 'Crash report'],
|
||||||
|
['type-feature', 'Feature or enhancement'],
|
||||||
|
]);
|
||||||
|
let issue_data = await github.rest.issues.get({
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
owner: context.repo.owner,
|
||||||
|
repo: context.repo.repo
|
||||||
|
}).then(issue => issue.data);
|
||||||
|
let header = '';
|
||||||
|
for (const label_data of issue_data.labels) {
|
||||||
|
const label_name = (typeof label_data === 'string') ? label_data : label_data.name;
|
||||||
|
if (HEADERS.has(label_name)) {
|
||||||
|
header = HEADERS.get(label_name);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (header !== '') {
|
||||||
|
console.log(`Setting new header: ${header}`);
|
||||||
|
await github.rest.issues.update({
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
owner: context.repo.owner,
|
||||||
|
repo: context.repo.repo,
|
||||||
|
body: `# ${header}\n\n${issue_data.body.replaceAll('\r', '')}`
|
||||||
|
});
|
||||||
|
}
|
Loading…
Reference in New Issue