管理工具版本

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

维护日期和到期日期会以注释的形式显示在相应版本上。