Cloud Deploy führt seine Vorgänge mit einem benutzerdefinierten Image aus, das Standardtoolversionen enthält. Cloud Deploy bietet Ihnen Flexibilität und Kontrolle über Ihren Bereitstellungsprozess, da Sie Toolversionen für Vorgänge zum Rendern, Bereitstellen und Überprüfen Ihrer Manifeste angeben können.
Auf dieser Seite wird beschrieben, wie Cloud Deploy-Toolversionen ausgewählt werden und wie lange die Wartung und der Support für jede Toolversion verfügbar sind.
Unterstützte Cloud Deploy-Tool-Versionen
Mit Cloud Deploy können Sie die Versionen für die folgenden Tools auswählen:
Cloud Deploy bietet ein Repository mit verfügbaren Toolversionen, die Sie für Ihre Vorgänge verwenden können. Alle diese Versionen unterliegen der Richtlinie zur Wartung und Einstellung.
Feste Tool-Versionierung
Alle Tool-Versionen werden standardmäßig in der Release-Ressource gespeichert. Die Toolversionen werden bei der Erstellung eines Release mit diesem Release verknüpft und für den gesamten Lebenszyklus dieses Release verwendet. Sie können während dieser Laufzeit nicht geändert werden. Der Release-Lebenszyklus umfasst alle Rendering-, Bereitstellungs- und anderen Jobs für diesen Release. Dies umfasst die Bereitstellung im endgültigen Ziel in der Progression und darüber hinaus (Rollbacks oder erneute Bereitstellungen). Sie können die Toolversionen, die mit einem Release verknüpft sind, mit dem folgenden Befehl ermitteln:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format='yaml(toolVersions)'
Bei Releases, die vor der Einführung der Tool-Versionsverwaltung erstellt wurden, ist in der Ausgabe keine toolVersions-Liste enthalten. Stattdessen können Sie die Skaffold-Version mit dem Flag --format 'yaml(skaffoldVersion)' aufrufen.
Feste Toolversionierung deaktivieren
Wenn Sie die Versionsverwaltung für Tools deaktivieren und die neuesten Tools für eine bestimmte Version verwenden möchten, können Sie für jedes Tool das spezielle Keyword latest angeben. Hier ist ein Beispiel für das Erstellen eines Releases, in dem die neuesten Versionen aller Tools verwendet werden:
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
Bestimmte Tool-Version angeben
Sie können eine beliebige unterstützte Toolversion verwenden. Wenn Sie die Version angeben möchten, die Sie verwenden möchten, fügen Sie das entsprechende Flag für das jeweilige Tool ein:
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
Bei Tools, für die Sie die Standardversion verwenden möchten, können Sie das entsprechende Versionsflag weglassen.
Im folgenden Befehl werden beispielsweise Skaffold 2.16.1 und Helm 3.18.3 verwendet:
gcloud deploy releases create release-001 \
--delivery-pipeline=PIPELINE_NAME \
--skaffold-version=2.16.1 \
--helm-version=3.18.3 \
--project=PROJECT \
--region=REGION
Kompatibilität von Tool-Versionen
Cloud Deploy sorgt dafür, dass die Toolversionen im Cloud Deploy-Image kompatibel sind. Wenn Sie die Funktion zum Ersetzen von Toolversionen verwenden, um Toolversionen im Cloud Deploy-Image zu ersetzen, sind Sie dafür verantwortlich, kompatible Toolversionen auszuwählen.
Einstellung und Wartungsrichtlinie für Toolversionen
Tool-Versionen werden ab dem Tag, an dem sie importiert werden, 12 Monate lang mit einem Wartungszeitraum von 60 Tagen unterstützt. Dieser Wartungszeitraum bedeutet, dass an eine Tool-Version gebundene Releases nach Ablauf der Unterstützung für diese Tool-Version noch 60 Tage lang unterstützt werden. Sie können weiterhin Roll-outs aus diesen Releases erstellen, aber keine Releases mit einer Tool-Version, die sich im Wartungszeitraum befindet.
Nach Ablauf des 60‑tägigen Wartungszeitraums wird die Toolversion für keine Vorgänge mehr unterstützt. Sie können keine Rollouts mehr aus einem Release erstellen, der die nicht unterstützte Version verwendet. Alle mit dem Release verknüpften Daten bleiben jedoch erhalten.
Mit dem folgenden Befehl können Sie sich die Wartungs- und Ablaufdaten des Releases ansehen:
gcloud deploy releases describe RELEASE_NAME \
--delivery-pipeline=PIPELINE_NAME \
--project=PROJECT \
--region=REGION \
--format 'yaml(condition)'
Sie können das Wartungs- und Ablaufdatum eines bestimmten Tools auch mit dem folgenden Befehl aufrufen:
gcloud artifacts versions list \
--package TOOL_NAME \
--repository tools \
--project cd-image-prod \
--location=REGION
Die Wartungs- und Ablaufdaten sind als Anmerkungen in den jeweiligen Versionen verfügbar.