GitLabのCICDのJob内容をMattermostに通知する方法

GitLabのプロジェクト(リポジトリ)を更新してCICDのJob結果をMattermostに通知する方法を紹介します。

GitLabのCICDのJob内容をMattermostに通知

前提条件(環境)

今回は次の環境で手順を実施します。

  • GitLab: 16.5
  • Mattermost: 8.1.9

構築手順

構築には次の手順が必要です。

  1. 事前確認
  2. 通知用のチャンネルの作成
  3. (Mattermost側)Incoming Webhookの追加
  4. (GitLab側)Webhookの設定
  5. 通知のテスト
  6. 通知の確認

事前確認

MattermostのIncoming Webhookの設定が有効になっていることを確認します。

通知用のチャンネルの作成

Mattermostに通知用のチャンネルを作成します。

  1. Mattermostにログイン

Mattermostにログインします。

  1. チャンネルを作成

「Main Menu」から「Create new channel」を選択します。

  1. チャンネル名を入力

チャンネル名や説明を入力して「Create channel」を選択します。

  1. チャンネルの確認

チャンネルが作成されたことを確認します。

(Mattermost側)Incoming Webhookの追加

MattermostのIncoming Webhookを追加します。

  1. Mattermostにログイン

Mattermostにログインします。

  1. Integrationsページを開く

「Main Menu」から「Integrations」を選択します。

  1. Incoming Webhooksを選択

「Incoming Webhooks」を選択します。

  1. Add Incoming Webhookを選択

「Add Incoming Webhook」を選択します。

  1. Webhookの設定

以下の項目を入力して「Save」を選択します。

  • Title: 任意のタイトル
  • Description: 任意の説明
  • Channel: 通知用のチャンネル(今回はGitLab)

  1. Webhook URLの確認

Webhook URLが表示されたことを確認します。URLをコピーしておきます。コピーしたら「Done」を選択します。

(GitLab側)Webhookの設定

GitLabのWebhookを設定します。

  1. GitLabにログイン

GitLabにログインします。

  1. プロジェクトを開く

通知を受け取るプロジェクトを開きます。

  1. Integrationsを開く

「Settings -> Integrations」を選択します。

  1. Mattermost notificationsを選択

「Mattermost notifications」を選択します。

  1. Mattermost notificationsの設定(Trigger)

次のようにTriggerの欄には通知したいイベントを選択します。

  1. Mattermost notificationsの設定(Notification settings)

Notification settingsの欄には以下のように設定します。

  • Branches for which notifications are to be sent: 通知するブランチ
  • Webhook: 先ほどコピーしたMattermostのIncoming WebhookのURL
  • Username: 通知するユーザー名

  1. 通知のテスト

「Test settings」を選択して設定をテストします。成功すると次のように表示されます。

  1. Mattermostに通知されたことを確認

Mattermostに通知されたことを確認します。GitLabのプロジェクトを更新すると次のように通知されます。

以上でGitLabのCICDのJob内容をMattermostに通知する設定が完了しました。

Mattermostの通知設定もSlackと同様に設定できます。

コメントを残す

マークダウン形式でコメントを入力できます。

アップロードファイルの最大サイズ: 512 MB。 画像, 音声, 動画, 文書, スプレッドシート, 対話型, テキスト, アーカイブ, コード, その他 をアップロードできます。 Youtube、Facebook、Twitter および他サービスへのリンクは自動的にコメント内に埋め込まれます。 ここにファイルをドロップ

プロフィール背景
Ryosuke
Ryosuke

ITエンジニア & 講師

クラウドネイティブやアーキテクチャ設計の講師として活動しながら、ITエンジニアのDXを推進するために新しい技術やベストプラクティスを常に学び、エンジニアの生産性と開発品質の向上に貢献することを目指しています。猫5匹飼っています。山奥のポツンと一軒家に住んでいて、事務所は海の近くです。