Skip to content

Stale Issue & PR Handler #177

Stale Issue & PR Handler

Stale Issue & PR Handler #177

Workflow file for this run

name: Stale Issue & PR Handler
on:
schedule:
- cron: '8 2 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs:
stale:
name: Handle Stale Issues & PRs
permissions:
contents: write
issues: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- name: Handle Stale Issues & PRs
uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0
id: stale-issues
with:
stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.'
close-issue-message: 'This issue was closed because it has been stalled for 5 days with no activity.'
days-before-issue-stale: 30
days-before-issue-close: 5
stale-issue-label: 'state: stale'
close-issue-label: 'resolution: closed'
exempt-issue-labels: 'state: blocked,state: keep'
stale-pr-message: 'This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days.'
close-pr-message: 'This PR was closed because it has been stalled for 10 days with no activity.'
days-before-pr-stale: 45
days-before-pr-close: 10
stale-pr-label: 'state: stale'
close-pr-label: 'resolution: closed'
exempt-pr-labels: 'state: blocked,state: keep'
slack-workflow-status:
if: always()
name: Slack Post Workflow Notification
needs:
- stale
runs-on: ubuntu-latest
steps:
- name: Slack Workflow Notifications
if: ${{ github.event_name == 'schedule' && needs.stale.result != 'success'}}
uses: Gamesight/slack-workflow-status@68bf00d0dbdbcb206c278399aa1ef6c14f74347a # v1.3.0
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
slack_webhook_url: ${{ secrets.SLACK_WEBHOOK_URL }}
include_jobs: on-failure
include_commit_message: true