2023-05-26 20:48:04 +02:00
|
|
|
name: Close stale pull requests
|
2023-05-17 22:51:51 +02:00
|
|
|
on:
|
|
|
|
workflow_dispatch:
|
|
|
|
inputs:
|
|
|
|
endDate:
|
|
|
|
description: stop processing PRs after this date
|
|
|
|
required: false
|
|
|
|
type: string
|
|
|
|
|
|
|
|
# yamllint disable rule:empty-lines
|
|
|
|
env:
|
|
|
|
CLOSE_MESSAGE: >
|
|
|
|
This pull request was opened more than a year ago and there has
|
|
|
|
been no activity in the last 6 months. We value your contribution
|
|
|
|
but since it has not progressed in the last 6 months it is being
|
|
|
|
closed. If you feel closing this pull request is not the right thing
|
|
|
|
to do, please leave a comment.
|
|
|
|
|
|
|
|
WARN_MESSAGE: >
|
|
|
|
This pull request was opened more than a year ago and there has
|
|
|
|
been no activity in the last 5 months. We value your contribution
|
|
|
|
but since it has not progressed in the last 5 months it is being
|
|
|
|
marked stale and will be closed if there is no progress in the
|
|
|
|
next month. If you feel that is not the right thing to do please
|
|
|
|
comment on the pull request.
|
|
|
|
# yamllint enable
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
stale:
|
|
|
|
permissions:
|
|
|
|
pull-requests: write # for actions/stale to close stale PRs
|
|
|
|
if: github.repository == 'nodejs/node'
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Set default end date which is 1 year ago
|
|
|
|
run: echo "END_DATE=$(date --date='525600 minutes ago' --rfc-2822)" >> "$GITHUB_ENV"
|
|
|
|
- name: if date set in event override the default end date
|
|
|
|
env:
|
|
|
|
END_DATE_INPUT_VALUE: ${{ github.event.inputs.endDate }}
|
|
|
|
if: ${{ github.event.inputs.endDate != '' }}
|
|
|
|
run: echo "END_DATE=$END_DATE_INPUT_VALUE" >> "$GITHUB_ENV"
|
|
|
|
- uses: mhdawson/stale@453d6581568dc43dbe345757f24408d7b451c651 # PR to add support for endDate
|
|
|
|
with:
|
|
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
end-date: ${{ env.END_DATE }}
|
|
|
|
days-before-issue-stale: -1
|
|
|
|
days-before-issue-close: -1
|
|
|
|
days-before-stale: 150
|
|
|
|
days-before-close: 30
|
|
|
|
stale-issue-label: stale
|
|
|
|
close-issue-message: ${{ env.CLOSE_MESSAGE }}
|
|
|
|
stale-issue-message: ${{ env.WARN_MESSAGE }}
|
|
|
|
exempt-pr-labels: never-stale
|
|
|
|
# max requests it will send per run to the GitHub API before it deliberately exits to avoid hitting API rate limits
|
|
|
|
operations-per-run: 500
|
|
|
|
remove-stale-when-updated: true
|