Blog

GitHubのプルリクにブランチごとのコメントを自動追加する

こんにちは、宮本です。最近はAstroフレームワークを触っています。今まではReactのNext.jsしか触ってこなかったので、なかなか新鮮な気持ちです。……が、残念ながら本文はAstroは関係ないです。そのうちAstroの記事も書きたいですね。

はじめに

さて、今回はGitHubのプルリク作成時のちょっと便利なGitHub Actionの紹介です。 プルリク作成時に地味にこんな悩みがありました。 「たまにプルリクを作成したマージ先のブランチで、masterとdevelopを間違える」 ……あまりに初歩的すぎて何も言葉が出ないかもしれませんが、それでも極々稀に、本当に稀にやらかします。今のところは流石に作った後で気づいて直したり、レビュー内で指摘が入って本当にやらかしたことはまだないですが、もしかするといずれやらかすかもしれません。CI/CDを完備していた場合には、そのままうっかり本番環境に……なんて目も当てられません。 というわけで、以下のような感じでプルリクを作成したら自動で主張激しくbotにコメントをしてもらっています。
GitHub Actionsを利用したbotのコメント投稿

実装

仕掛けているワークフローは以下の通りです。 設定ファイルとして、 .github/workflows/conf/pull_request_comment.json を定義しています。 このjsonには、キーにプルリクエスト作成時にコメントを投稿したいheadブランチを指定しています。 そしてこのjsonファイルで指定したパス(.github/workflows/conf/comment_files/master.md)には、プルリク作成時に投稿したいコメントを書いたmdファイルを配置します。mdファイルにコメント内容を分離して、コメントの編集は気楽にできるようにしています。

さいごに

さて、プルリク作成時に、ブランチごとに任意のコメントを投稿するワークフローの紹介でした。 今回の例ではただブランチ名とリリース用のプルリクだと教えてくれるだけですが、投稿するコメント内容を編集すれば、開発時のプルリクには不要だけどリリース前に必要なチェック項目(リリース日の調整、GTMの設定変更の確認など)を自動で投稿するようなこともできます。逆もまた然り。プルリクテンプレートに記述しておくこともできますが、この項目はリリース時にしかいらないのに行が多くて邪魔だし毎回消すのも面倒、と思った場合は入れてみるのもありかもしれません。

We are hiring!

ニフティでは、さまざまなプロダクトへ挑戦するエンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトよりお気軽にご連絡ください! カジュアル面談も受け付けています! Tech TalkやMeetUpも開催しております!
こちらもお気軽にご応募ください!