🕳️
null の判定 [GitHub Actions]
課題
on.pull_request_review
においてシングルコメント (Add single comment) とレビューコメント (Review changes > Comment, 本文は空) は github.event.review.body
に null
が入るか ""
が入るかの違いしかありません。
しかし GitHub Actions は緩やかな比較しか行えないので if: github.event.review.body == null
と書いても上手く判定できません。
null
でも ""
でも true
扱いになってしまいます。
ワークアラウンド
JavaScript の ===
で判定します。
文字列で返ってくることに注意してください。
- uses: actions/github-script@v6
id: is_null
with:
script: return context.payload.review.body === null
- run: echo "Single comment (review.body is null)"
if: steps.is_null.outputs.result == 'true'
- run: echo "Review comment (review.body is not null)"
if: steps.is_null.outputs.result != 'true'
Discussion