Cloud Deploy esegue le operazioni utilizzando un'immagine personalizzata, che include le versioni predefinite degli strumenti. Cloud Deploy ti offre flessibilità e controllo sul processo di deployment consentendoti di specificare le versioni degli strumenti da utilizzare nelle operazioni per eseguire il rendering, il deployment e la verifica dei manifest.
Questa pagina descrive come vengono selezionate le versioni dello strumento Cloud Deploy e i tempi di manutenzione e assistenza per ogni versione dello strumento.
Versioni dello strumento Cloud Deploy supportate
Cloud Deploy ti consente di selezionare le versioni per i seguenti strumenti:
Cloud Deploy fornisce un repository di versioni degli strumenti disponibili che puoi utilizzare per le tue operazioni. Tutte queste versioni sono soggette alle norme di manutenzione e ritiro.
Versioni predefinite degli strumenti
Se non vengono fornite versioni degli strumenti specificate dall'utente, durante la creazione della release vengono utilizzate le versioni predefinite degli strumenti.
Ogni settimana viene rilasciata una nuova immagine di Cloud Deploy contenente le versioni più recenti degli strumenti disponibili al momento della creazione dell'immagine. A seconda delle tempistiche delle diverse pianificazioni di rilascio degli strumenti, una nuova versione di uno strumento potrebbe richiedere fino a due settimane per diventare quella predefinita.
Puoi visualizzare le versioni predefinite eseguendo questo comando:
gcloud deploy get-config \
--project=PROJECT \
--region=REGION \
--format 'yaml(defaultToolVersions)'
Versioni degli strumenti fisse
Per impostazione predefinita, tutte le versioni dello strumento vengono salvate nella risorsa di rilascio. Le versioni degli strumenti sono associate a una release al momento della creazione e vengono utilizzate per l'intero ciclo di vita della release e non possono essere modificate durante questo periodo. Il ciclo di vita del rilascio è costituito da tutti i job di rendering, deployment e altri job relativi a quel rilascio. Ciò include il deployment nel target finale della progressione e oltre (rollback o redeployment). Puoi trovare le versioni degli strumenti associate a una release eseguendo questo comando:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format='yaml(toolVersions)'
Le release create prima della funzionalità di controllo delle versioni dello strumento non avranno toolVersions
elencato nel loro output. Puoi invece visualizzare la versione di Skaffold
con il flag --format 'yaml(skaffoldVersion)'.
Disabilita il controllo delle versioni degli strumenti fissi
Se vuoi disattivare il controllo delle versioni degli strumenti fissi e utilizzare gli strumenti più recenti per una determinata release, puoi farlo specificando la parola chiave speciale latest per ogni strumento. Ecco un esempio di creazione di una release che utilizza le versioni più recenti di tutti gli strumenti:
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
Come specificare una versione particolare dello strumento da utilizzare
Puoi utilizzare una qualsiasi delle versioni degli strumenti supportate. Per specificare la versione che vuoi utilizzare, includi il flag appropriato per lo strumento specifico:
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
Per tutti gli strumenti in cui vuoi utilizzare la versione predefinita, puoi omettere il flag di versione corrispondente.
Ad esempio, il seguente comando utilizza Skaffold 2.16.1 e 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
Compatibilità delle versioni degli strumenti
Cloud Deploy si assume la responsabilità di garantire che le versioni degli strumenti siano compatibili con l'immagine Cloud Deploy. Se utilizzi la funzionalità di sostituzione della versione dello strumento per sostituire le versioni degli strumenti nell'immagine Cloud Deploy, sei responsabile della scelta di versioni degli strumenti compatibili.
Norme relative alla manutenzione e alla deprecazione delle versioni degli strumenti
Le versioni degli strumenti sono supportate per 12 mesi con un periodo di manutenzione di 60 giorni, a partire dal giorno dell'importazione. Questo periodo di manutenzione significa che le release associate a una versione dello strumento sono ancora supportate per 60 giorni dopo la scadenza del supporto per quella versione dello strumento. Puoi comunque creare implementazioni da queste release, ma non puoi creare release utilizzando una versione dello strumento che si trova nel periodo di manutenzione.
Al termine del periodo di manutenzione di 60 giorni, la versione dello strumento non è più supportata per nessuna operazione. Non puoi più creare implementazioni da una release che utilizza la versione non supportata. Tuttavia, tutti i dati associati alla release rimangono.
Puoi visualizzare le date di manutenzione e scadenza della release eseguendo questo comando:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format 'yaml(condition)'
Puoi anche visualizzare la manutenzione e la data di scadenza di uno strumento specifico eseguendo il comando:
gcloud artifacts versions list \
--package TOOL_NAME \
--repository tools \
--project cd-image-prod \
--location=REGION
Le date di manutenzione e scadenza sono disponibili come annotazioni nelle rispettive versioni.
Versione precedente di Skaffold
In precedenza, Cloud Deploy forniva un elenco specifico di versioni di Skaffold supportate. Queste versioni di Skaffold corrispondevano a un'immagine Cloud Deploy creata con quella particolare versione di Skaffold e altri strumenti. Le versioni di Skaffold sono state supportate per 12 mesi, con un periodo di manutenzione di 60 giorni.
Cloud Deploy sta abbandonando questo modello per migliorare la strategia di sicurezza di Cloud Deploy. Senza la necessità di fornire immagini che corrispondono a una particolare versione di Skaffold, Cloud Deploy può risolvere le vulnerabilità più rapidamente e può aggiornare le versioni predefinite degli strumenti più frequentemente.
Le versioni esistenti di Skaffold continueranno a essere supportate fino alla data di scadenza.
| Versione Skaffold | Data di aggiornamento | Inizio manutenzione | Scadenza |
|---|---|---|---|
| 2.16 (note di rilascio) | 12 maggio 2025 | 14 maggio 2026 | 13 luglio 2026 |
| 2.14 (note di rilascio) | 17 febbraio 2025 | 25 febbraio 2026 | 26 aprile 2026 |
Puoi continuare a creare release che utilizzano queste versioni specifiche di Skaffold
utilizzando il flag --skaffold-version nel seguente comando:
gcloud deploy releases create RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--skaffold-version=SKAFFOLD_VERSION \
--project=PROJECT \
--region=REGION