GitHub + Slack Integrationとは、SlackにGitHubの通知を流すときに便利に利用できるアプリのことです。最近の仕様変更によりSlackのスレッドをデフォルトで活用するようになりました。GitHub上にリポジトリはありますが、現在実装はオープンソースになっておらず、READMEが公開されているのみです。
slack.github.com
スレッドを無効化する設定
以下のコマンドを対象のSlackチャンネルで実行すると、 Disable threading for Pull Request and Issue notifications.
という表示とともにDisableボタンが登場するのでそれを押せばそのチャンネルでのスレッドが無効化されます。これはチャンネルごとの設定なのであらゆるチャンネルで無効化したい場合は実行して回る必要があります。ちなみにこの次の「Also send to channel」の設定が有効の場合でもこのDisableは効きます。
/github settings
参考コメント: https://github.com/integrations/slack/issues/1500#issuecomment-1335564029
スレッドはそのままでいいので、Also send to channelしてほしい場合の設定
Slackのスレッドでの通知は便利に使っているけど、チャンネルにコメントが流れてこなくて不便という場合はその設定もできます。以下のように comments:"channel"
にsubscribeするとスレッド内のIssueのコメントがチャンネルにも流れます*1。これはチャンネル・リポジトリごとの設定なので、全ての設定をこれにしたい場合はチャンネル × リポジトリの数の分実行しないといけません。
/github subscribe org/repo comments:"channel" /github subscribe org/repo reviews:"channel"
時系列
どうしてこんなことになったのか時系列でまとめておきます。
- 2022/10/18 15時頃 GitHub + Slack Integration の仕様変更が実施される
- Issueコメントはスレッド内に入るようになる*2。Issue作成時・コメント時にSlack上でもユーザがメンションされるようになる。
- Update README.md by ashokirla · Pull Request #1499 · integrations/slack · GitHub
- 2022/10/18 16:28 スレッドの無効化オプションを追加してほしいというユーザからのIssueが登録される Option for disabling threading feature · Issue #1500 · integrations/slack · GitHub
- 2022/10/18 19:41 メンションやめてほしいというIssueも登録される Stop to mention to user who created or commented on issues · Issue #1501 · integrations/slack · GitHub
- 2022/10/19 21時頃 Slack上でメンションが飛ぶ仕様が無効化される https://github.com/integrations/slack/issues/1501#issuecomment-1283962776
- 2022/10/27 23時頃 Issueコメント通知を Also send to channel できるオプションが追加される https://github.com/integrations/slack/issues/1500#issuecomment-1293587491
- 2022/12/03 2時頃 スレッドを無効化できる設定が追加される https://github.com/integrations/slack/issues/1500#issuecomment-1335564029