Faça a gestão das versões das ferramentas

O Cloud Deploy executa as respetivas operações através de uma imagem personalizada, que inclui versões de ferramentas predefinidas. O Cloud Deploy oferece-lhe flexibilidade e controlo sobre o processo de implementação, permitindo-lhe especificar versões de ferramentas a usar nas operações para renderizar, implementar e validar os seus manifestos.

Esta página descreve como as versões da ferramenta Cloud Deploy são selecionadas e o tempo de manutenção e apoio técnico para cada versão da ferramenta.

Versões da ferramenta de implementação na nuvem compatíveis

O Cloud Deploy permite-lhe selecionar as versões das seguintes ferramentas:

O Cloud Deploy fornece um repositório de versões de ferramentas disponíveis que pode usar para as suas operações. Todas estas versões estão sujeitas à Política de Manutenção e Descontinuação.

Versões de ferramentas predefinidas

Se não forem fornecidas versões de ferramentas especificadas pelo utilizador, são usadas as versões de ferramentas predefinidas durante a criação do lançamento.

É lançada uma nova imagem do Cloud Deploy todas as semanas com as versões mais recentes das ferramentas disponíveis no momento em que a imagem é criada. Com base no momento de diferentes programações de lançamento das ferramentas, uma nova versão da ferramenta pode demorar até duas semanas a tornar-se a predefinição.

Pode ver as versões predefinidas executando o seguinte comando:

gcloud deploy get-config \
      --project=PROJECT \
      --region=REGION \
      --format 'yaml(defaultToolVersions)'

Controlo de versões de ferramentas fixas

Por predefinição, todas as versões das ferramentas são guardadas no recurso de lançamento. As versões da ferramenta são associadas a um lançamento no momento da criação do lançamento e são usadas durante todo o ciclo de vida desse lançamento, e não podem ser alteradas durante esse período. O ciclo de vida do lançamento consiste em todos os trabalhos de renderização, implementação e outros trabalhos nesse lançamento. Isto inclui a implementação no alvo final na progressão e além (reversões ou reimplementações). Pode encontrar as versões das ferramentas associadas a um lançamento executando o seguinte comando:

gcloud deploy releases describe RELEASE_NAME \
       --delivery-pipeline=PIPELINE_NAME \
       --project=PROJECT \
       --region=REGION \
       --format='yaml(toolVersions)'

Os lançamentos criados antes da funcionalidade de controlo de versões da ferramenta não têm toolVersions indicados na respetiva saída. Em alternativa, pode ver a versão do Skaffold com a flag --format 'yaml(skaffoldVersion)'.

Desative a gestão de versões de ferramentas fixa

Se quiser desativar a gestão de versões fixa das ferramentas e usar as ferramentas mais recentes para uma determinada versão, pode fazê-lo especificando a palavra-chave especial latest para cada ferramenta. Segue-se um exemplo de criação de um lançamento que usa as versões mais recentes de todas as ferramentas:

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

Como especificar uma versão da ferramenta específica a usar

Pode usar qualquer uma das versões das ferramentas suportadas. Para especificar a versão que quer usar, inclua a flag adequada para a ferramenta específica:

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

Para quaisquer ferramentas em que queira usar a versão predefinida, pode omitir a flag de versão correspondente.

Por exemplo, o seguinte comando usa o Skaffold 2.16.1 e o 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

Compatibilidade da versão da ferramenta

O Cloud Deploy assume a responsabilidade de garantir que as versões das ferramentas são compatíveis na imagem do Cloud Deploy. Se usar a funcionalidade de substituição de versão da ferramenta para substituir as versões das ferramentas na imagem do Cloud Deploy, é responsável por escolher versões de ferramentas compatíveis.

Política de manutenção e descontinuação de versões de ferramentas

As versões das ferramentas são suportadas durante 12 meses com um período de manutenção de 60 dias, a partir do dia em que são importadas. Este período de manutenção significa que os lançamentos associados a uma versão da ferramenta continuam a ser suportados durante 60 dias após a expiração do suporte técnico dessa versão da ferramenta. Continua a poder criar implementações a partir dessas versões, mas não pode criar versões com uma versão da ferramenta que esteja no período de manutenção.

Após o período de manutenção de 60 dias, a versão da ferramenta deixa de ser suportada para quaisquer operações. Já não pode criar implementações a partir de um lançamento que use a versão não suportada. No entanto, todos os dados associados ao lançamento permanecem.

Pode ver as datas de manutenção e validade na versão executando o seguinte comando:

gcloud deploy releases describe RELEASE_NAME \
       --delivery-pipeline=PIPELINE_NAME \
       --project=PROJECT \
       --region=REGION \
       --format 'yaml(condition)'

Também pode ver a data de manutenção e validade de uma ferramenta específica executando o comando:

gcloud artifacts versions list \
       --package TOOL_NAME \
       --repository tools \
       --project cd-image-prod \
       --location=REGION

As datas de manutenção e validade estão disponíveis como anotações nas respetivas versões.

Versão antiga do Skaffold

O Cloud Deploy costumava fornecer uma lista específica de versões do Skaffold suportadas. Estas versões do Skaffold correspondiam a uma imagem do Cloud Deploy criada com essa versão específica do Skaffold e outras ferramentas. As versões do Skaffold foram suportadas durante 12 meses, com um período de manutenção de 60 dias.

O Cloud Deploy está a afastar-se deste modelo para melhorar a postura de segurança do Cloud Deploy. Sem a necessidade de fornecer imagens que correspondam a uma versão específica do Skaffold, o Cloud Deploy pode resolver vulnerabilidades mais rapidamente e atualizar as versões das ferramentas predefinidas com maior frequência.

As versões existentes do Skaffold vão continuar a ser suportadas até à data de validade.

Versão do Skaffold Data de referência Início da manutenção Expiração
2.16 (notas de lançamento) 12 de maio de 2025 14 de maio de 2026 13 de julho de 2026
2.14 (notas de lançamento) 17 de fevereiro de 2025 25 de fevereiro de 2026 26 de abril de 2026

Pode continuar a criar lançamentos que usam estas versões específicas do Skaffold com a flag --skaffold-version no seguinte comando:

gcloud deploy releases create RELEASE_NAME \
      --delivery-pipeline=PIPELINE_NAME \
      --skaffold-version=SKAFFOLD_VERSION \
      --project=PROJECT \
      --region=REGION