モバイルクライアントグループの若宮(id:D_R_1009)です。 先日、すやすや寝ていたところGitHubから1通のメールが届きました。
私個人の話なのですが、AndroidとiOS、そしてFlutterのコードを書いたりレビューしたりしています。 このためFlutterのコードを書いている時にAndroidのレビュー依頼が来る状況などが発生するため、自らレビュー依頼の一覧を確認しに行くだけでは難しくなっています。 こんな状況のため、Pull Pandaの恩恵を強く感じています。 もはやPull Pandaのおかげでレビューができていると言っても過言ではありません!
DMとしてアサインやコメントがSlackのDMとして送られてくるので、Macの通知に「GitHub上で動きがあったよ!」と表示されます。 またレビュー依頼を見落としていたとしても、Slackのチャンネル上にメンションが来るため、長時間レビューを放置してしまう事件を防ぐことができています。 Androidアプリを個人的に導入してみましたが、GitHub Actionsの実行に関する通知も表示されてしまいます。 このため、少々通知がうるさく感じることもあり、Slackで完結すると大変嬉しい感じです。
そんなわけで、GitHubのScheduled Reminderに移行してみました。 結論として、移行自体はとても簡単です。 しかしいくつかのハマりどころを見つけましたので、去年の続編という形で今回ブログまとめておきたいと思います。
去年のブログはこちら。
チャンネルの設定を移行する
まずはPull Pandaにログインしてみましょう。
右上の Sign in
からGitHubのアカウント連携に進みます。
Team Reminders
と My DM settings
、そして Add users
が表示されていると思います。
まずは、 Team reminders
から対応しましょう。
クリックすると次のような表示になっているはずです。
Migrate to Github
をクリックすると、移行工程の半分が終了です。
ブラウザはそのままにして、Slackの通知を飛ばしているチャンネルに移動してください。
すると、チャンネルに「どのチームの下にリマインダーを移行するか」という質問が投稿されています。 ここで質問されているのは「GitHub Scheduledとして、どのアカウントの下でこのリマインダーの設定を管理するか」になります。このため、例えばAndroidチームではOrganization Accountである "Studyplus" の下にリマインダーの設定を移行しています。 おそらく、同じような設定にするとPull Pandaの設定をしていた時と同じように、社内の他チームの設定を確認できるようになると思います。
移行が済むと、次のようなコメントがSlackに書き込まれます。
manage this reminder
からリマインダー設定を更新してみてください。
UIが真新しいので戸惑うかもしれませんが、Pull Pandaで設定できる項目は全て揃っています。
なお、GitHub Scheduled RemindersにすることでDraft PRを通知の対象外にすることができるようになっています。
チームのPull Requestの運用ルールに合わせて、この機会にぜひ設定してみてください。
個人の設定(Pull PandaからのDM)を移行する
続いて My DM settings
を移行します。
この移行をしないと、GitHubのチャンネル通知においてGitHubアカウント名のまま投稿されてしまうので注意してください。
移行はPull Pandaの My DM settings
上部に表示されているリンクからGitHubへ移行すれば間違い無いと思いますが、うまくいかない場合は次の手順を実行してみてください。
まず、SlackとGitHubの連携状態を次のページから確認します。
こちらの Add to Slack
からGitHubの連携状態を更新すると、GitHubからDMが飛んできます。
DM内容は次のような「連携したよ!」というメッセージです。
続いて、自分の設定を確認し更新します。 次のリンクから、GitHubの個人アカウントに紐づくScheduled remindersを確認することができます。
更新したいworkspaceの設定を変更したら、忘れずに更新します。 これで、Slackのチャンネル上にSlackアカウント宛の通知が飛んでくるようになります! やった!
終わりに
Slackに「移行できるよ!」という通知には気付きつつ来ていて放置していたのですが、移行してたらサクッと完了しました。 移行ツールって大事ですね。
Slack通知は過剰になりすぎると追うのも一苦労となってしまいますが、適切に設定すればチームの開発力を底上げしてくれると思います。 Scheduled RemindersとSlackを組み合わせれば、レビュー待ちの通知をしつつ、Pull Requestに対する全てのコメントをチャンネルに流すこともできます。 逆にOpenしてから数時間たったPull RequestだけをSlackチャンネルに通知し、細かな通知はDMに集約することもできます。
code review assignment
については、所属しているチームが小さいこともあり、Pull PandaもGitHubの機能も使うことがしばらくなさそうです。
もし所属されているチームで利用し「便利だ!」となりましたら、ぜひ共有していただければと思っています!