SlackとGitlabの連携
2019-12-26
2019-12-26
SlackとGitlabを連携してみる
弊社ではコミュニケーションツールとしてSlackへの移行を現在行っております。
また、GitのツールはGitlabをAWS上に展開しており、
プルリクを出したりした際、自動でSlackにメッセージが投稿されるよう連携を行いました。
プルリク作って、別途コミュニケーションツールで呼びかけるのは無駄なコストなので・・・!
Slack APIの設定
まずはこちらにアクセスして設定を行います
https://api.slack.com/

Start Buildingをクリックします。
ログインを要求される場合はログインしてください。
私は常時ログインしているので表示ページはありませんでした!
すると、新規Appの設定画面になると思います。

上の入力欄には好きな名前をつけてください。
下は自分が属しているワークスペースの選択になるので、
連携したいワークスペースを選択します。
そして「Create App」をクリックして作成を完了させてください。
作成が完了したら、メニューから「Incoming Webhooks」を選択します。
選択しましたら、右上のスイッチを「On」にしてください。
「On」になりましたら、今度は最下部の「Add New Webhook to Workspace」をクリックしてください。

すると認証画面になりますので、連携したいチャンネルを選択します。

「許可」が完了しましたら、またIncoming Webhooksの画面へ自動的に戻ります。
そして「Webhool URL」に項目が追加されているはずです。

このURLはGitlabの設定で使うのでコピーしておきましょう。
これでSlack側の設定は完了です。
案外簡単でしょう・・・?
でも知らないとメニュー探したり、色々大変なんだ・・・。
Gitlabの設定
では次はGitlab側の設定です。設定したいプロジェクトの画面を開き、「設定」を開いてください。
ん?日本語じゃないって?ならSettingとかじゃないですかね?(適当

設定を開いたら、今度はサブメニューからIntegrationsを開いてください。

ほぼ一番下!にSlack notificationsという欄があるので、そちらをクリックして開きます。

Webhookの入力欄に、Slack APIで最後にコピーしたURLを貼り付け、変更を保存します。
保存してから、Test Settingsでテストメッセージを送ります。
保存する前にTest Settingsを押してしまうと、保存されずに失敗するので
「必ず先に保存してからTest Settings」を押してくださいね・・・!

これで無事にSlackにメッセージが送れるようになりました。
便利でもあるけど、プルリク、マージを超ペースで行っていると
必要なチャットが埋もれたりするので、その場合はChat用とGitlab用でチャンネル分けてくださいね!
私からは以上です!