Provide the GitHub token by default (#253)

* Provide the GitHub token by default

Signed-off-by: Sora Morimoto <sora@morimoto.io>

* npm run build

Signed-off-by: Sora Morimoto <sora@morimoto.io>
This commit is contained in:
Sora Morimoto 2021-01-15 21:07:08 +09:00 committed by GitHub
parent ddc7648635
commit 39de730f99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 79 additions and 78 deletions

View File

@ -1,8 +1,8 @@
name: "Stale issue handler" name: 'Stale issue handler'
on: on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: "0 0 * * *" - cron: '0 0 * * *'
jobs: jobs:
stale: stale:
@ -10,7 +10,6 @@ jobs:
steps: steps:
- uses: actions/stale@v3 - uses: actions/stale@v3
with: 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' 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-stale: 30
days-before-close: 5 days-before-close: 5

View File

@ -1,4 +1,4 @@
name: "Build" name: 'Build'
on: # rebuild any PRs and main branch changes on: # rebuild any PRs and main branch changes
pull_request: pull_request:
push: push:
@ -20,7 +20,6 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: ./ - uses: ./
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue is stale' stale-issue-message: 'This issue is stale'
stale-pr-message: 'This PR is stale' stale-pr-message: 'This PR is stale'
debug-only: true debug-only: true

View File

@ -5,55 +5,59 @@ Warns and then closes issues and PRs that have had no activity for a specified a
### Building and testing ### Building and testing
Install the dependencies Install the dependencies
```bash ```bash
$ npm install $ npm install
``` ```
Build the typescript and package it for distribution Build the typescript and package it for distribution
```bash ```bash
$ npm run build && npm run pack $ npm run build && npm run pack
``` ```
Run the tests :heavy_check_mark: Run the tests :heavy_check_mark:
```bash ```bash
$ npm test $ npm test
``` ```
### Arguments ### Arguments
| Input | Description | Usage | | Input | Description | Usage |
| :---: | :---: | :---: | | :-------------------------: | :-------------------------------------------------------------------------------: | :------: |
| `repo-token` | PAT(Personal Access Token) for authorizing repository. | *Required* | | `repo-token` | PAT(Personal Access Token) for authorizing repository. | Optional |
| `days-before-stale` | Idle number of days before marking an issue/pr as stale. *Defaults to **60*** | Optional | `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 | `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-issue-message` | Message to post on the stale issue. | Optional |
| `stale-pr-message` | Message to post on the stale pr. | 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-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 | `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 | `stale-issue-label` | Label to apply on the stale issue. \*Defaults to **stale\*** | Optional |
| `close-issue-label` | Label to apply on closing issue. | Optional | `close-issue-label` | Label to apply on closing issue. | Optional |
| `stale-pr-label` | Label to apply on the stale pr. | Optional | `stale-pr-label` | Label to apply on the stale pr. | Optional |
| `close-pr-label` | Label to apply on the closing 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-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 | `exempt-pr-labels` | Labels on the pr exempted from being marked as stale. | Optional |
| `only-labels` | Only labels checked for stale issue/pr. | Optional | `only-labels` | Only labels checked for stale issue/pr. | Optional |
| `operations-per-run` | Maximum number of operations per run. *Defaults to **30*** | 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 | `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 | `debug-only` | Dry-run on action. \*Defaults to **false\*** | Optional |
| `ascending` | Order to get issues/pr. *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-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 | `skip-stale-pr-message` | Skip adding stale message on stale pr. \*Defaults to **false\*** | Optional |
### Usage ### Usage
See [action.yml](./action.yml) For comprehensive list of options. See [action.yml](./action.yml) For comprehensive list of options.
Basic: Basic:
```yaml ```yaml
name: "Close stale issues" name: 'Close stale issues'
on: on:
schedule: schedule:
- cron: "30 1 * * *" - cron: '30 1 * * *'
jobs: jobs:
stale: stale:
@ -61,17 +65,17 @@ jobs:
steps: steps:
- uses: actions/stale@v3 - uses: actions/stale@v3
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'Message to comment on stale issues. If none provided, will not mark issues stale' 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' stale-pr-message: 'Message to comment on stale PRs. If none provided, will not mark PRs stale'
``` ```
Configure stale timeouts: Configure stale timeouts:
```yaml ```yaml
name: "Close stale issues" name: 'Close stale issues'
on: on:
schedule: schedule:
- cron: "30 1 * * *" - cron: '30 1 * * *'
jobs: jobs:
stale: stale:
@ -79,18 +83,18 @@ jobs:
steps: steps:
- uses: actions/stale@v3 - uses: actions/stale@v3
with: 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' 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-stale: 30
days-before-close: 5 days-before-close: 5
``` ```
Configure labels: Configure labels:
```yaml ```yaml
name: "Close stale issues" name: 'Close stale issues'
on: on:
schedule: schedule:
- cron: "30 1 * * *" - cron: '30 1 * * *'
jobs: jobs:
stale: stale:
@ -98,7 +102,6 @@ jobs:
steps: steps:
- uses: actions/stale@v3 - uses: actions/stale@v3
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'Stale issue message' stale-issue-message: 'Stale issue message'
stale-pr-message: 'Stale pull request message' stale-pr-message: 'Stale pull request message'
stale-issue-label: 'no-issue-activity' stale-issue-label: 'no-issue-activity'

View File

@ -4,7 +4,7 @@ author: 'GitHub'
inputs: inputs:
repo-token: repo-token:
description: 'Token for the repository. Can be passed in using `{{ secrets.GITHUB_TOKEN }}`.' description: 'Token for the repository. Can be passed in using `{{ secrets.GITHUB_TOKEN }}`.'
required: true default: ${{ github.token }}
stale-issue-message: stale-issue-message:
description: 'The message to post on the issue when tagging it. If none provided, will not mark issues stale.' description: 'The message to post on the issue when tagging it. If none provided, will not mark issues stale.'
stale-pr-message: stale-pr-message:

2
dist/index.js vendored
View File

@ -481,7 +481,7 @@ function run() {
} }
function getAndValidateArgs() { function getAndValidateArgs() {
const args = { const args = {
repoToken: core.getInput('repo-token', { required: true }), repoToken: core.getInput('repo-token'),
staleIssueMessage: core.getInput('stale-issue-message'), staleIssueMessage: core.getInput('stale-issue-message'),
stalePrMessage: core.getInput('stale-pr-message'), stalePrMessage: core.getInput('stale-pr-message'),
closeIssueMessage: core.getInput('close-issue-message'), closeIssueMessage: core.getInput('close-issue-message'),

View File

@ -15,7 +15,7 @@ async function run(): Promise<void> {
function getAndValidateArgs(): IssueProcessorOptions { function getAndValidateArgs(): IssueProcessorOptions {
const args = { const args = {
repoToken: core.getInput('repo-token', {required: true}), repoToken: core.getInput('repo-token'),
staleIssueMessage: core.getInput('stale-issue-message'), staleIssueMessage: core.getInput('stale-issue-message'),
stalePrMessage: core.getInput('stale-pr-message'), stalePrMessage: core.getInput('stale-pr-message'),
closeIssueMessage: core.getInput('close-issue-message'), closeIssueMessage: core.getInput('close-issue-message'),