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の設定変更の確認など)を自動で投稿するようなこともできます。逆もまた然り。プルリクテンプレートに記述しておくこともできますが、この項目はリリース時にしかいらないのに行が多くて邪魔だし毎回消すのも面倒、と思った場合は入れてみるのもありかもしれません。

ニフティでは、
さまざまなプロダクトへ挑戦する
エンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトより
お気軽にご連絡ください!

ニフティに興味をお持ちの方は
キャリア登録をぜひお願いいたします!

connpassでニフティグループに
参加いただくと
イベントの
お知らせが届きます!