diff --git a/.github/workflows/close-stale-issues.yml b/.github/workflows/close-stale-issues.yml new file mode 100644 index 0000000000..3da877a732 --- /dev/null +++ b/.github/workflows/close-stale-issues.yml @@ -0,0 +1,53 @@ +name: Close stale issues + +# Controls when the action will run. +on: + schedule: + # Uses UTC so it runs at 10PM PDT + - cron: "0 6 * * *" + +jobs: + cleanup: + runs-on: ubuntu-latest + name: Stale issue job + steps: + - uses: aws-actions/stale-issue-cleanup@v3 + with: + issue-types: issues + + # Setting messages to an empty string will cause the automation to skip + # that category + ancient-issue-message: | + This issue has not received any attention in 1 year. + If you want to keep this issue open, please leave a comment below and auto-close will be canceled. + stale-issue-message: | + This issue has not received a response in 14 days. + If you want to keep this issue open, please leave a comment below and auto-close will be canceled. + stale-pr-message: | + This PR has not received a response in 14 days. + If you want to keep this issue open, please leave a comment below and auto-close will be canceled. + + # These labels are required + stale-issue-label: blocked/close-if-inactive + exempt-issue-labels: no-autoclose, stage/needs-attention + stale-pr-label: blocked/close-if-inactive + exempt-pr-labels: no-autoclose, type/feature + response-requested-label: blocked/more-info-needed + + # Don't set this to not apply a label when closing issues + closed-for-staleness-label: stage/closed-for-inactivity + + # Issue timing + days-before-stale: 14 + days-before-close: 7 + days-before-ancient: 365 + + # If you don't want to mark a issue as being ancient based on a + # threshold of "upvotes", you can set this here. An "upvote" is + # the total number of +1, heart, hooray, and rocket reactions + # on an issue. + minimum-upvotes-to-exempt: 10 + + # need a repo scope token here to make this action can trigger other github actions + repo-token: ${{ secrets.STALE_BOT_PERSONAL_TOKEN }} + diff --git a/.github/workflows/closed-issue-message.yml b/.github/workflows/closed-issue-message.yml new file mode 100644 index 0000000000..5128523727 --- /dev/null +++ b/.github/workflows/closed-issue-message.yml @@ -0,0 +1,18 @@ +name: Closed issue message + +on: + issues: + types: [ closed ] +jobs: + auto_comment: + runs-on: ubuntu-latest + steps: + - uses: aws-actions/closed-issue-message@v1 + with: + # These inputs are both required + repo-token: "${{ secrets.GITHUB_TOKEN }}" + message: | + ### ⚠️COMMENT VISIBILITY WARNING⚠️ + Comments on closed issues are hard for our team to see. + If you need more assistance, please either tag a team member or open a new issue that references this one. + If you wish to keep having a conversation with other community members under this issue feel free to do so. diff --git a/.github/workflows/need-attention-label.yml b/.github/workflows/need-attention-label.yml new file mode 100644 index 0000000000..a0261dcd4b --- /dev/null +++ b/.github/workflows/need-attention-label.yml @@ -0,0 +1,22 @@ +name: Add need attention label + +on: + issue_comment: + types: [created, edited] + +jobs: + apply-label: + runs-on: ubuntu-latest + steps: + - uses: actions/github-script@v3 + # the login of our bot called 'sam-cli-bot' + if: github.event.sender.login != 'aws-sam-cli-stale-bot' + with: + github-token: ${{secrets.GITHUB_TOKEN}} + script: | + github.issues.addLabels({ + issue_number: context.issue.number, + owner: context.repo.owner, + repo: context.repo.repo, + labels: ['stage/needs-attention'] + })