設定 Cloud Pub/Sub 通知

您可以使用 Cloud Pub/Sub 接收 GCP 存放區的變更通知。這些通知會讓您知道使用者何時建立新存放區、刪除存放區或推送變更至現有存放區。您可以針對特定存放區或整個專案設定通知。

若要進一步瞭解 Cloud Pub/Sub,請參閱什麼是 Google Cloud Pub/Sub?主題。

事前準備

  • 如果您還沒這麼做,請依照快速入門中的步驟建立專案、安裝 Git 並初始化 Google Cloud SDK。
  • 請確認您有建立主題和訂閱的適當權限。詳情請參閱存取權控管

建立 Cloud Pub/Sub 主題

針對您想要收到通知的每個 Cloud Source Repositories 專案或存放區,您必須建立 Cloud Pub/Sub 主題。您可以使用主控台或 gcloud 指令列工具建立主題。

在建立主題時,您必須使用存放區的完整 URI。完整 URI 如下所示:

projects/[PROJECT_ID]/topics/[TOPIC_NAME]

其中 [PROJECT_ID] 是您的 Google Cloud Platform 專案 ID,[TOPIC_NAME] 是主題的名稱。

建立主題:

主控台

  1. 前往 GCP 主控台的「Cloud Pub/Sub 主題」頁面。

    前往 Cloud Pub/Sub 主題頁面

  2. 按一下 [Create Topic] (建立主題)

  3. 使用 URI 輸入主題名稱:

    projects/[PROJECT-ID]/topics/[TOPIC_NAME]
    

    其中,[PROJECT-ID] 是您的 Google Cloud Platform 專案 ID。

  4. 按一下 [Create] (建立)

gcloud

在終端機視窗執行以下指令:

gcloud alpha pubsub topics create projects/[PROJECT-ID]/topics/[TOPIC_NAME]

若要進一步瞭解 gcloud alpha pubsub topics 指令,請參閱 topics 說明文件

建立 Cloud Pub/Sub 訂閱

若要接收發佈到主題的事件,您必須建立 Pub/Sub 訂閱

訂閱者應用程式會接收來自存放區主題的訊息。訂閱者可藉由傳送通知或觸發版本來回應您的存放區事件。

建立訂閱:

主控台

  1. 前往 GCP 主控台的「Cloud Pub/Sub 主題」頁面。

    前往 Cloud Pub/Sub 主題頁面

  2. 按一下專案的主題。

  3. 按一下 [Create Subscription] (建立訂閱)

  4. 輸入訂閱名稱:

    projects/[PROJECT-ID]/subscriptions/[SUBSCRIPTION_NAME]
    

    將「傳送類型」的設定保留為「提取」。

  5. 按一下 [Create] (建立)。

gcloud

在終端機視窗執行以下指令:

gcloud alpha pubsub subscriptions create [SUBSCRIPTION_NAME] --topic=[TOPIC_NAME]

若要進一步瞭解 gcloud alpha pubsub subscriptions 指令,請參閱 subscriptions 說明文件

新增主題

您可以使用 gcloud 指令列工具在專案或存放區與 Cloud Pub/Sub 主題之間新增關聯。

若要新增主題到整個專案,請輸入以下指令:

gcloud beta source project-configs update --add-topic=[TOPIC_NAME]

若要新增主題到特定存放區,請輸入以下指令:

gcloud beta source repos update [REPOSITORY_NAME] --add-topic=[TOPIC_NAME]

移除主題

您可以使用 gcloud 指令列工具移除專案或存放區與 Cloud Pub/Sub 主題之間的關聯。

若要從整個專案移除主題,請輸入以下指令:

gcloud beta source project-configs update --remove-topic=[TOPIC_NAME]

若要從特定存放區移除主題,請輸入以下指令:

gcloud beta source repos update [REPOSITORY_NAME] --remove-topic=[TOPIC_NAME]

設定主題格式

Cloud Source Repositories 的通知可以使用 JSON 或通訊協定緩衝區格式。若要設定主題的格式,您可以在新增主題時使用 --message-format 參數,例如:

gcloud beta source project-configs update --add-topic=[TOPIC_NAME] --message-format=[json|protobuf]

您也可以使用 set-format 指令:

gcloud beta source project-configs update --update-topic[TOPIC_NAME] --message-format=[json|protobuf]

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Source Repositories