-
Notifications
You must be signed in to change notification settings - Fork 0
/
action.yml
44 lines (39 loc) · 1.31 KB
/
action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
name: Auto PR Closer
description: 指定された日数アクティブでないプルリクエストを自動でクローズします
inputs:
token:
description: 'GitHub Token'
required: true
days:
description: 'クローズするプルリクエストのアクティブでない日数'
required: true
outputs:
pr_ids:
description: 'クローズするプルリクエストのID'
value: ${{ steps.get_prs.outputs.pr_ids }}
runs:
using: "composite"
steps:
- name: "Checkout"
uses: actions/checkout@v4
- name: Get Target Pull Request Ids
id: get_prs
shell: bash
run: |
n_days_ago=$(date -d "-${{ inputs.days }} days" +%Y-%m-%d)
pr_ids=$(gh pr list --state open --search "updated:<$n_days_ago" --json number --jq '.[].number' | tr '\n' ' ')
echo "pr_ids: ${pr_ids}"
echo "pr_ids=${pr_ids}" >> $GITHUB_OUTPUT
env:
GITHUB_TOKEN: ${{ inputs.token }}
- name: Close Old Pull Requests
shell: bash
run: |
for pr_id in ${{ steps.get_prs.outputs.pr_ids }}; do
gh pr close $pr_id --delete-branch --comment "このプルリクエストは古くなったため自動クローズしました。"
done
env:
GITHUB_TOKEN: ${{ inputs.token }}
branding:
icon: git-pull-request
color: blue