Go to file
Alex Brazier 107018c400
feat: Add delete-branch option to delete PR branches after closing (#190)
* feat: Add `delete-branch` option to delete PR branches after closing

* Fix branch ref
2021-01-15 06:49:38 -05:00
__tests__ feat: Add delete-branch option to delete PR branches after closing (#190) 2021-01-15 06:49:38 -05:00
.github Turn off licensing check 2020-08-28 06:33:32 -04:00
.licenses/npm Add Licensed To Help Verify Prod Licenses (#138) 2020-08-28 06:22:51 -04:00
.vscode Remove stale labels and ignore stale issues with comments (#58) 2020-05-11 10:46:03 -04:00
dist Update dist with latest dependencies 2020-11-20 07:07:11 -05:00
docs Reflect updated workflow 2019-08-06 18:12:22 -04:00
src feat: Add delete-branch option to delete PR branches after closing (#190) 2021-01-15 06:49:38 -05:00
.eslintignore Cleanup release (#42) 2020-04-14 13:28:00 -04:00
.eslintrc.json Update eslint config to latest (#123) 2020-07-24 08:17:50 -04:00
.gitattributes Add Licensed To Help Verify Prod Licenses (#138) 2020-08-28 06:22:51 -04:00
.gitignore fix(label): allow to use spaces inside the labels (#199) 2020-11-20 06:48:33 -05:00
.licensed.yml Add Licensed To Help Verify Prod Licenses (#138) 2020-08-28 06:22:51 -04:00
.prettierrc.json Initial import 2019-08-03 21:34:59 -04:00
action.yml feat: Add delete-branch option to delete PR branches after closing (#190) 2021-01-15 06:49:38 -05:00
jest.config.js fix(label): allow to use spaces inside the labels (#199) 2020-11-20 06:48:33 -05:00
LICENSE Initial import 2019-08-03 21:34:59 -04:00
package-lock.json Bump @types/semver from 7.3.1 to 7.3.4 (#170) 2020-11-20 07:05:03 -05:00
package.json Bump @types/semver from 7.3.1 to 7.3.4 (#170) 2020-11-20 07:05:03 -05:00
README.md Change cron time 2020-10-13 08:24:23 -07:00
tsconfig.json Remove stale labels and ignore stale issues with comments (#58) 2020-05-11 10:46:03 -04:00

Close Stale Issues and PRs

Warns and then closes issues and PRs that have had no activity for a specified amount of time.

Building and testing

Install the dependencies

$ npm install

Build the typescript and package it for distribution

$ npm run build && npm run pack

Run the tests ✔️

$ npm test

Arguments

Input Description Usage
repo-token PAT(Personal Access Token) for authorizing repository. Required
days-before-stale Idle number of days before marking an issue/pr as stale. Defaults to 60 Optional
days-before-close Idle number of days before closing an stale issue/pr. Defaults to 7 Optional
stale-issue-message Message to post on the stale issue. Optional
stale-pr-message Message to post on the stale pr. Optional
close-issue-message Message to post on the stale issue while closing it. Optional
close-pr-message Message to post on the stale pr while closing it. Optional
stale-issue-label Label to apply on the stale issue. Defaults to stale Optional
close-issue-label Label to apply on closing issue. Optional
stale-pr-label Label to apply on the stale pr. Optional
close-pr-label Label to apply on the closing pr. Optional
exempt-issue-labels Labels on an issue exempted from being marked as stale. Optional
exempt-pr-labels Labels on the pr exempted from being marked as stale. Optional
only-labels Only labels checked for stale issue/pr. Optional
operations-per-run Maximum number of operations per run. Defaults to 30 Optional
remove-stale-when-updated Remove stale label from issue/pr on updates or comments. Defaults to true Optional
debug-only Dry-run on action. Defaults to false Optional
ascending Order to get issues/pr. Defaults to false Optional
skip-stale-issue-message Skip adding stale message on stale issue. Defaults to false Optional
skip-stale-pr-message Skip adding stale message on stale pr. Defaults to false Optional

Usage

See action.yml For comprehensive list of options.

Basic:

name: "Close stale issues"
on:
  schedule:
  - cron: "30 1 * * *"

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/stale@v3
      with:
        repo-token: ${{ secrets.GITHUB_TOKEN }}
        stale-issue-message: 'Message to comment on stale issues. If none provided, will not mark issues stale'
        stale-pr-message: 'Message to comment on stale PRs. If none provided, will not mark PRs stale'

Configure stale timeouts:

name: "Close stale issues"
on:
  schedule:
  - cron: "30 1 * * *"

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/stale@v3
      with:
        repo-token: ${{ secrets.GITHUB_TOKEN }}
        stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days'
        days-before-stale: 30
        days-before-close: 5

Configure labels:

name: "Close stale issues"
on:
  schedule:
  - cron: "30 1 * * *"

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/stale@v3
      with:
        repo-token: ${{ secrets.GITHUB_TOKEN }}
        stale-issue-message: 'Stale issue message'
        stale-pr-message: 'Stale pull request message'
        stale-issue-label: 'no-issue-activity'
        exempt-issue-labels: 'awaiting-approval,work-in-progress'
        stale-pr-label: 'no-pr-activity'
        exempt-pr-labels: 'awaiting-approval,work-in-progress'
        only-labels: 'awaiting-feedback,awaiting-answers'

Debugging

To see debug output from this action, you must set the secret ACTIONS_STEP_DEBUG to true in your repository. You can run this action in debug only mode (no actions will be taken on your issues) by passing debug-only true as an argument to the action.