Support Requests is a GitHub Action that comments on and closes issues labeled as support requests.
The continued development of Support Requests is made possible thanks to the support of awesome backers. If you'd like to join them, please consider contributing with Patreon, PayPal or Bitcoin.
Support Requests is a specialized version of Label Actions, and it can perform the following actions when an issue is labeled, unlabeled or reopened:
- The support label is added: leave a comment, close and lock the issue
- The support label is removed: reopen and unlock the issue
- The issue is reopened: remove the support label, unlock the issue
Create the support-requests.yml
workflow file in the .github/workflows
directory, use one of the example workflows to get started.
The action can be configured using input parameters.
github-token
- GitHub access token, value must be
${{ github.token }}
or an encrypted secret that contains a personal access token - Optional, defaults to
${{ github.token }}
- GitHub access token, value must be
support-label
- Label used to mark issues as support requests
- Optional, defaults to
support
issue-comment
- Comment to post on issues marked as support requests,
{issue-author}
is an optional placeholder - Optional, defaults to
:wave: @{issue-author}, we use the issue tracker exclusively for bug reports and feature requests. However, this issue appears to be a support request. Please use our support channels to get help with the project.
- Comment to post on issues marked as support requests,
close-issue
- Close issues marked as support requests,
value must be either
true
orfalse
- Optional, defaults to
true
- Close issues marked as support requests,
value must be either
issue-close-reason
- Reason for closing issues, value must be
either
completed
ornot planned
- Optional, defaults to
not planned
- Reason for closing issues, value must be
either
lock-issue
- Lock issues marked as support requests,
value must be either
true
orfalse
- Optional, defaults to
false
- Lock issues marked as support requests,
value must be either
issue-lock-reason
- Reason for locking issues, value must be one
of
resolved
,off-topic
,too heated
orspam
- Optional, defaults to
off-topic
- Reason for locking issues, value must be one
of
The following workflow will comment on and close issues marked as support requests.
name: 'Support Requests'
on:
issues:
types: [labeled, unlabeled, reopened]
permissions:
issues: write
jobs:
action:
runs-on: ubuntu-latest
steps:
- uses: dessant/support-requests@v4
This workflow declares all the available input parameters of the action and their default values. Any of the parameters can be omitted.
name: 'Support Requests'
on:
issues:
types: [labeled, unlabeled, reopened]
permissions:
issues: write
jobs:
action:
runs-on: ubuntu-latest
steps:
- uses: dessant/support-requests@v4
with:
github-token: ${{ github.token }}
support-label: 'support'
issue-comment: >
:wave: @{issue-author}, we use the issue tracker exclusively
for bug reports and feature requests. However, this issue appears
to be a support request. Please use our support channels
to get help with the project.
close-issue: true
issue-close-reason: 'not planned'
lock-issue: false
issue-lock-reason: 'off-topic'
The action uses an installation access token by default to interact with GitHub.
You may also authenticate with a personal access token to perform actions
as a GitHub user instead of the github-actions
app.
Create a personal access token
with the repo
or public_repo
scopes enabled, and add the token as an
encrypted secret
for the repository or organization, then provide the action with the secret
using the github-token
input parameter.
steps:
- uses: dessant/support-requests@v4
with:
github-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
Copyright (c) 2017-2023 Armin Sebastian
This software is released under the terms of the MIT License. See the LICENSE file for further information.