🍡
PR の assignees が空だったときに自動アサイン
PR 作成者をアサイン
.github/workflows/assign.yml
name: Assign
on:
pull_request:
types: [ opened, unassigned ]
jobs:
assign:
runs-on: ubuntu-20.04
timeout-minutes: 1
steps:
- run: cat $GITHUB_EVENT_PATH
- run: gh pr edit $NUMBER --add-assignee $ASSIGNEE
env:
GH_TOKEN: ${{ github.token }}
GH_REPO: ${{ github.repository }}
NUMBER: ${{ github.event.pull_request.number }}
ASSIGNEE: ${{ github.event.pull_request.user.login }}
if: ${{ toJSON(github.event.pull_request.assignees) == '[]' }}
補足: gh
github.token
(secrets.GITHUB_TOKEN
) を使用した場合 --add-assignee @me
にすると github-actions[bot]
をアサインしようとしてエラーになります。
'github-actions[bot]' not found
補足: if
本当は count
して == 0
で比較したいのですが現在は関数がありません。[1]
代わりに JSON に変換して文字列として比較します。
if: ${{ toJSON(github.event.pull_request.assignees) == '[]' }}
reviewers も自動リクエスト
assignees と同様に gh pr edit $NUMBER --add-reviewer $REVIEWER
してもいいですし、コードオーナーという仕組みもあります。
他にも選択肢はありそうです。
Discussion
こちらの記事参考にさせていただきました、ありがとうございます!
少しだけ補足なのですが、botユーザーの場合はCI実行時にエラーになってしまったので、if文でBotは除くようにすると良さそうでした
とても参考になりました。