Cloud Build Notifier は Cloud Run でコンテナとして実行される Docker イメージです。サブスクライバー アプリケーションによってポーリングされると、Cloud Build Notifier は push サブスクリプションを使用して、Slack や SMTP サーバーなどの構成済みのサービスにメッセージを配信します。
このページでは、Cloud Build 通知システムの概要について説明します。
Cloud Build Notifier
Cloud Build は、すべてのビルドイベントの更新とビルド メタデータを cloud-builds
トピックの Pub/Sub に送信します。 Cloud Build Notifier は、そのトピックをリッスンし、受信したメッセージをフィルタして、Cloud Run 経由でサービスにメッセージを送信するように構成できます。
どの Notifier も Cloud Storage に格納された構成に共通の YAML 仕様を使用します。目的のサービスで認証が必要な場合、認証情報は Secret Manager に保存されます。Cloud Run はメッセージを転送し、通知をサービスに送信します。
次の図は、Cloud Build が Pub/Sub や Cloud Run などの他の Google Cloud プロダクトと連携して通知を送信する方法を示しています。
Cloud Build が提供するサポート対象の Notifier
Cloud Build では、デプロイ可能な Notifier イメージが cloud-build-notifiers
リポジトリで管理されています。次の表に、使用可能な Notifier を示します。
Notifier | 説明 |
---|---|
bigquery |
BigQuery テーブルにビルドデータを書き込みます。 |
githubissues |
GitHub Webhook を使用して、GitHub リポジトリに対して問題を作成します。 |
googlechat |
Google Chat Webhook を使用して Google Chat スペースにメッセージを投稿します。 |
http |
別の HTTP エンドポイントに JSON ペイロードを送信します。 |
slack |
Slack Webhook を使用して、Slack チャンネルにメッセージを投稿します。 |
smtp |
SMTP サーバー経由でメールを送信します。 |
各通知ツールの構成方法については、各サービスの対応するページをご覧ください。
- BigQuery 通知を構成する
- GitHub Issues の通知を構成する
- Google Chat の通知を構成する
- HTTP 通知を構成する
- Slack 通知を構成する
- SMTP 通知を構成する
通知構成の自動化
Cloud Build には、Cloud Build でサポートされている Notifier の通知構成を自動化するための設定スクリプトが用意されています。
Cloud Build でサポートされている Notifier の通知を構成する方法については、通知の構成の自動化をご覧ください。
独自の Notifier の作成
Cloud Build によって管理される通知機能(Slack や SMTP など)に加えて、cloud-build-notifiers
リポジトリを使用して独自の Notifier を作成することもできます。
独自の Notifier を作成する方法については、独自の Notifier を作成するをご覧ください。
次のステップ
- BigQuery、GitHub Issue、Google Chat、HTTP、Slack、または SMTP Notifier を構成する方法を学習する。
- 通知の構成を自動化する方法を学習する。
- 独自の Notifier を作成する方法を学習する。