Skip to content

Unassign inactive issues and add comment #1579

Unassign inactive issues and add comment

Unassign inactive issues and add comment #1579

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: ''