1name: lifecycle
2
3on:
4 workflow_call:
5 inputs:
6 issue-message:
7 type: string
8 default: |
9 This bot triages issues in order to help the maintainers identify what
10 needs attention, according to the following lifecycle rules:
11
12 - After 90 days of inactivity, `lifecycle/stale` is applied
13 - After 90 days of inactivity since `lifecycle/stale` was applied,
14 `lifecycle/rotten` is applied
15
16 **This bot will not automatically close stale issues.**
17
18 To remove the stale status, you can:
19
20 - Remove the stale label from this issue
21 - Comment on this issue
22 - Close this issue
23 - Offer to help out with triaging
24
25 ---
26
27 To avoid automatic lifecycle management of this issue, add
28 `lifecycle/pinned`.
29
30 pr-message:
31 type: string
32 default: |
33 This bot triages pull requests in order to help the maintainers
34 identify what needs attention, according to the following lifecycle
35 rules:
36
37 - After 90 days of inactivity, `lifecycle/stale` is applied
38 - After 90 days of inactivity since `lifecycle/stale` was applied,
39 `lifecycle/rotten` is applied
40
41 **This bot will not automatically close stale pull requests.**
42
43 To remove the stale status, you can:
44
45 - Remove the stale label from this pull request
46 - Comment on this issue
47 - Close this issue
48 - Offer to help out with triage and code review
49
50 ---
51
52 To avoid automatic lifecycle management of this pull request, add
53 `lifecycle/pinned`.
54
55jobs:
56 stale:
57 name: stale
58 runs-on: ubuntu-latest
59 permissions:
60 issues: write
61 pull-requests: write
62 steps:
63 - uses: actions/stale@v9
64 with:
65 days-before-close: -1
66 days-before-stale: 90
67 exempt-all-milestones: true
68 exempt-issue-labels: lifecycle/pinned,lifecycle/rotten,lifecycle/stale
69 exempt-pr-labels: lifecycle/pinned,lifecycle/rotten,lifecycle/stale
70 labels-to-remove-when-stale: lifecycle/active
71 stale-issue-label: lifecycle/stale
72 stale-issue-message: ${{ inputs.issue-message }}
73 stale-pr-label: lifecycle/stale
74 stale-pr-message: ${{ inputs.pr-message }}
75
76 rotten:
77 name: rotten
78 runs-on: ubuntu-latest
79 permissions:
80 issues: write
81 pull-requests: write
82 steps:
83 - uses: actions/stale@v9
84 with:
85 days-before-close: -1
86 days-before-stale: 180
87 exempt-all-milestones: true
88 labels-to-remove-when-stale: lifecycle/active,lifecycle/stale
89 exempt-issue-labels: lifecycle/pinned
90 exempt-pr-labels: lifecycle/pinned
91 only-labels: lifecycle/stale
92 stale-issue-label: lifecycle/rotten
93 stale-issue-message: ${{ inputs.issue-message }}
94 stale-pr-label: lifecycle/rotten
95 stale-pr-message: ${{ inputs.pr-message }}