Add discussion triage workflow

This commit is contained in:
shamoon
2026-05-11 08:50:06 -07:00
parent 233721cc90
commit 11e9f28e5e

View File

@@ -3,14 +3,17 @@ name: Issue Triage
on: on:
issues: issues:
types: [labeled] types: [labeled]
discussion:
types: [labeled]
permissions: permissions:
discussions: write
issues: write issues: write
jobs: jobs:
close-needs-discussion: close-needs-discussion:
name: Issues Need Discussion name: Issues Need Discussion
if: github.event.label.name == 'needs-discussion' if: github.event_name == 'issues' && github.event.label.name == 'needs-discussion'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 - uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
@@ -41,3 +44,47 @@ jobs:
issue_number: issueNumber, issue_number: issueNumber,
lock_reason: 'off-topic', lock_reason: 'off-topic',
}); });
comment-needs-information:
name: Discussions Need Information
if: github.event_name == 'discussion' && github.event.label.name == 'needs-information'
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
const owner = context.repo.owner;
const repo = context.repo.repo;
const discussionNumber = context.payload.discussion.number;
let discussionId = context.payload.discussion.node_id;
if (!discussionId) {
const result = await github.graphql(
`query($owner:String!, $repo:String!, $number:Int!) {
repository(owner:$owner, name:$repo) {
discussion(number:$number) {
id
}
}
}`,
{
owner,
repo,
number: discussionNumber,
},
);
discussionId = result.repository.discussion.id;
}
await github.graphql(
`mutation($discussion:ID!, $body:String!) {
addDiscussionComment(input:{discussionId:$discussion, body:$body}) {
clientMutationId
}
}`,
{
discussion: discussionId,
body: 'Dear homepage user, thanks for opening this discussion! Please ensure you add the output from the troubleshooting guide steps, the support template asks for those details because they usually make it possible to understand the problem without guessing. Please update the discussion with the relevant troubleshooting output, configuration, logs, and browser console details where applicable: https://gethomepage.dev/troubleshooting/. Thank you!',
},
);