Skip to content

Commit 850f80e

Browse files
authored
add workflows to automate aged issues management (#289)
Signed-off-by: Vadym Blauta <[email protected]>
1 parent 0d4d509 commit 850f80e

File tree

2 files changed

+65
-0
lines changed

2 files changed

+65
-0
lines changed

.github/workflows/stale.yaml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: 'Mark stale issues'
2+
3+
on:
4+
schedule:
5+
- cron: '0 1 * * *'
6+
7+
jobs:
8+
stale-issues:
9+
runs-on: ubuntu-latest
10+
permissions:
11+
issues: write
12+
steps:
13+
- name: 'Mark stale issues'
14+
uses: actions/stale@v9
15+
with:
16+
days-before-issue-stale: 90
17+
days-before-pr-stale: -1
18+
days-before-close: -1
19+
stale-issue-label: 'lifecycle/stale'
20+
exempt-issue-labels: 'lifecycle/rotten'
21+
22+
- name: 'Mark rotten issues'
23+
uses: actions/stale@v9
24+
with:
25+
days-before-issue-stale: 30
26+
days-before-pr-stale: -1
27+
days-before-close: -1
28+
stale-issue-label: 'lifecycle/rotten'
29+
only-labels: 'lifecycle/stale'
30+
labels-to-remove-when-stale: 'lifecycle/stale'
31+
32+
- name: 'Close rotten issues'
33+
uses: actions/stale@v9
34+
with:
35+
days-before-stale: -1
36+
days-before-issue-close: 30
37+
days-before-pr-close: -1
38+
stale-issue-label: 'lifecycle/rotten'

.github/workflows/unstale.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: 'Unstale Issue'
2+
3+
on:
4+
issues:
5+
types: [ reopened ]
6+
issue_comment:
7+
types: [ created ]
8+
9+
jobs:
10+
remove-stale:
11+
runs-on: ubuntu-latest
12+
permissions:
13+
issues: write
14+
if: >-
15+
github.event.issue.state == 'open' &&
16+
(contains(github.event.issue.labels.*.name, 'lifecycle/stale') ||
17+
contains(github.event.issue.labels.*.name, 'lifecycle/rotten'))
18+
steps:
19+
- name: 'Checkout repository'
20+
uses: actions/checkout@v4
21+
22+
- name: 'Remove stale labels'
23+
env:
24+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
25+
run: |
26+
echo "Removing 'stale' label from issue #${{ github.event.issue.number }}"
27+
gh issue edit ${{ github.event.issue.number }} --remove-label "lifecycle/stale,lifecycle/rotten"

0 commit comments

Comments
 (0)