Unassign inactive issues and add comment #638
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Unassign inactive issues and add comment | |
on: | |
schedule: | |
- cron: '0 * * * *' # Runs once daily | |
workflow_dispatch: | |
jobs: | |
unassign_inactive_issues: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Find inactive issues | |
id: find_inactive | |
uses: dessant/issue-activity@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
days-before-stale: 0.04 # Set to 7 days of inactivity | |
stale-issue-message: 'This issue has been marked as inactive due to lack of activity.' | |
stale-pr-message: '' | |
exempt-issue-labels: '' | |
only-issue-labels: 'hacktoberfest' # Only check issues with 'hacktoberfest' label | |
operations-per-run: 100 | |
- name: Add comment to inactive issues | |
if: steps.find_inactive.outputs.stale-issues != '' | |
uses: actions/github-script@v6 | |
with: | |
script: | | |
const issueNumber = 1526; | |
const issues = ${{ steps.find_inactive.outputs.stale-issues }}; | |
const issueNumbers = issues.split(','); | |
if (issueNumbers.includes(String(issueNumber))) { | |
const issue = await github.rest.issues.get({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
issue_number: issueNumber, | |
}); | |
if (issue.data.assignee) { | |
await github.rest.issues.createComment({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
issue_number: issueNumber, | |
body: `This issue has been inactive for 1 hour and will be unassigned.` | |
}); | |
} | |
} | |
# Step 4: Unassign inactive issues | |
- name: Unassign inactive issues | |
if: steps.find_inactive.outputs.stale-issues != '' | |
uses: andymckay/assign@v2 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
issue-number: ${{ steps.find_inactive.outputs.stale-issues }} | |
assignees: '' |