Cloud Deploy 會使用自訂映像檔執行作業,其中包含預設工具版本。Cloud Deploy 可讓您指定要在作業中使用的工具版本,以便算繪、部署及驗證資訊清單,因此能彈性控管部署程序。
本頁說明如何選取 Cloud Deploy 工具版本,以及各工具版本的維護和支援時間。
支援的 Cloud Deploy 工具版本
Cloud Deploy 可讓您選取下列工具的版本:
Cloud Deploy 提供可用於作業的工具版本存放區。所有這些版本都適用維護和淘汰政策。
固定工具版本
根據預設,所有工具版本都會儲存到發布資源。工具版本會在建立版本時與版本建立關聯,並用於該版本的整個生命週期,且在該生命週期內無法變更。發布生命週期包含該發布版本的所有算繪、部署和其他工作。包括部署到最終目標,以及後續作業 (復原或重新部署)。如要查看與版本相關聯的工具版本,請執行下列指令:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format='yaml(toolVersions)'
在工具版本控管功能推出前建立的版本,輸出內容不會列出 toolVersions。不過,您可以使用 --format 'yaml(skaffoldVersion)' 標記查看 Skaffold 版本。
停用固定工具版本管理
如要停用固定工具版本控管,並使用特定版本的最新工具,可以為每個工具指定特殊關鍵字 latest。以下範例說明如何建立版本,並使用所有工具的最新版本:
gcloud deploy releases create RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--docker-version=latest \
--helm-version=latest \
--kpt-version=latest \
--kubectl-version=latest \
--kustomize-version=latest \
--skaffold-version=latest
如何指定要使用的特定工具版本
您可以使用任何支援的工具版本。如要指定要使用的版本,請加入特定工具的適當旗標:
gcloud deploy releases create RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--docker-version=DOCKER_VERSION \
--helm-version=HELM_VERSION \
--kpt-version=KPT_VERSION \
--kubectl-version=KUBECTL_VERSION \
--kustomize-version=KUSTOMIZE_VERSION \
--skaffold-version=SKAFFOLD_VERSION
如要使用預設版本的工具,可以省略對應的版本標記。
舉例來說,下列指令會使用 Skaffold 2.16.1 和 Helm 3.18.3:
gcloud deploy releases create release-001 \
--delivery-pipeline=PIPELINE_NAME \
--skaffold-version=2.16.1 \
--helm-version=3.18.3 \
--project=PROJECT \
--region=REGION
工具版本相容性
Cloud Deploy 會負責確保 Cloud Deploy 映像檔上的工具版本相容。如果您使用工具版本替換功能,替換 Cloud Deploy 映像檔中的工具版本,則您有責任選擇相容的工具版本。
工具版本淘汰和維護政策
工具版本匯入後,可享有 12 個月的支援服務,以及 60 天的維護期。也就是說,如果工具版本停止支援,與該版本相關的發行內容仍可享有 60 天的支援服務。您還是可以從這些版本建立推出作業,但無法使用維護期間的工具版本建立版本。
60 天維護期過後,系統將不再支援任何作業的工具版本。如果發行版本使用不受支援的版本,您就無法再從該版本建立推出作業。但與發行內容相關的所有資料仍會保留。
執行下列指令,即可查看版本的維護和到期日期:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format 'yaml(condition)'
您也可以執行下列指令,查看特定工具的維護和到期日期:
gcloud artifacts versions list \
--package TOOL_NAME \
--repository tools \
--project cd-image-prod \
--location=REGION
維護和到期日會以註解的形式顯示在各個版本上。