推送版本並管理核准

本頁說明如何將現有的 Cloud Deploy 版本升級至推送管道進展中的下一個目標。

事前準備

本頁假設您已建立發布內容

推送版本

將版本部署至推送管道中定義的目標後,即可將其升級至下一個目標:

gcloud

gcloud deploy releases promote --release=RELEASE_NAME \
                               --delivery-pipeline=PIPELINE_NAME \
                               --region=REGION

其中:

RELEASE_NAME 是您要宣傳的版本名稱。

PIPELINE_NAME 是您用來管理這個版本部署作業的推送管道名稱。

REGION 是建立版本的區域名稱,例如 us-central1。必填。

如要進一步瞭解 gcloud deploy releases promote 指令,請參閱 Google Cloud SDK 參考資料。

控制台

  1. 開啟「Delivery pipelines」(推送管道) 頁面

  2. 在推送管道清單中,按一下您的管道。

    「推送管道詳細資料」頁面會以圖形顯示推送管道的進度。

     Google Cloud 控制台中的推送管道視覺化

  3. 在推送管道的視覺化畫面中,按一下第一個目標的「升級」

    系統會顯示「升級發布版本」對話方塊。顯示要升級的目標詳細資料。

  4. 點選「升級」。

如果發布版本後,發布管道或目標有所變更,Cloud Deploy 會傳回訊息,指出可能不符,並提示您確認升級。您可以n回應提示,並在繼續操作前檢查管道版本之間的差異。如果選擇繼續升級,系統會根據建立版本時定義的推送管道部署版本。如要進一步瞭解管道不符問題,請參閱「每個版本的管道執行個體」。

Cloud Deploy 會在目的地目標中為版本建立 rollout,並將版本排入部署佇列。部署後,傳送管道的視覺化內容會顯示這項事實:

 Google Cloud 控制台中的推送管道視覺化

管理推送管道的核准

你可以要求核准任何目標,並核准或拒絕發行至該目標。

如要以程式輔助方式管理核准作業,請使用 Pub/Sub 和 Cloud Deploy API,將工作流程管理系統 (例如 ServiceNow) 或其他系統與 Cloud Deploy 整合。

需要核准

如要規定必須獲得核准才能推送至任何目標,請在目標設定中將 requireApproval 設為 true

     apiVersion: deploy.cloud.google.com/v1
     kind: Target
     metadata:
      name:
     description:
     requireApproval: true

詳情請參閱「交付管道設定」。

如果推出作業待核准,訂閱 clouddeploy-approvals Pub/Sub 主題的使用者或系統會從 clouddeploy-approvals 主題收到通知,然後核准或拒絕推出作業。

使用平行部署時,您可以將多重目標設定為需要核准。 如果系統拒絕將目標升級,控制器推出作業就會失敗,並處於 APPROVAL_REJECTED 狀態,且不會建立子項推出作業。

核准或拒絕推出作業

具備 roles/clouddeploy.approver 角色的使用者或服務帳戶,可以核准 Cloud Deploy 推出至需要核准的目標。

整合式工作流程管理系統收到需要核准的通知 (使用服務通知) 後,即可使用 Cloud Deploy API 核准或拒絕推出作業。

手動核准或拒絕

控制台

  1. 在 Google Cloud 控制台中,前往 Cloud Deploy 的「Delivery pipelines」(推送管道) 頁面,查看可用推送管道的清單。

    開啟「推送管道」頁面

    Google Cloud 控制台會顯示推送管道清單。 系統不會顯示已設定但未向 Cloud Deploy 服務註冊的交付管道。

  2. 按一下推送管道的名稱。

    系統會顯示管道圖表。如果核准程序尚未完成,且您具備 roles/clouddeploy.approver 角色或同等權限,則圖表會包含「查看」連結。

    推送管道視覺化,待核准

  3. 按一下「Review」(查看)

    系統會顯示待核准的推出作業清單。

    這個管道的推出作業 (待核准)

  4. 按一下「Review」(查看)

    系統會顯示「核准推出」畫面。

    待核准的推出作業詳細資料

    「資訊清單差異」分頁會顯示從目前部署版本 (如有) 到您現在核准 (或拒絕) 的版本,所算繪資訊清單的任何變更。

  5. 按一下「核准」或「拒絕」

    如果核准,應用程式就會部署到目標。如果拒絕,應用程式就不會部署,且除非重新宣傳,否則之後也無法核准。

gcloud

具備 roles/clouddeploy.approver 角色的使用者可以手動核准或拒絕發布。如要核准,請按照下列步驟操作:

gcloud deploy rollouts approve rollout-name --delivery-pipeline=pipeline-name \
                                                                   --region=region \
                                                                   --release=release-name

如要拒絕:

gcloud deploy rollouts reject rollout-name --delivery-pipeline=pipeline-name \
                                                                  --region=region \
                                                                  --release=release-name