Sie können Umgebungsvariablen für Workflows zum Zeitpunkt der Bereitstellung. Sie können z. B. einen Workflow erstellen, die dynamisch konfiguriert wird, je nach Umgebung, in der sie ausgeführt wird. bereitgestellt. Alternativ können Sie einen Workflow erstellen, der als Vorlage wiederverwendet und gemäß separat verwalteten Umgebungsvariablen konfiguriert werden kann.
Umgebungsvariablen werden als beliebige Schlüssel/Wert-Paare von Strings festgelegt und sind für den Workflow zur Laufzeit zugänglich. Sie werden im Workflows-Backend gespeichert, sind auf die Workflowausführung beschränkt und während der Ausführung eines Workflows unveränderlich.
Alle Umgebungsvariablen sind an eine Bereitstellung eines Workflows gebunden und können nur bei einer Bereitstellung festgelegt oder geändert werden. Umgebung erstellen oder ändern erfordert eine erfolgreiche Bereitstellung. Wenn eine Bereitstellung fehlschlägt, werden Änderungen an Umgebungsvariablen nicht angewendet.
Mit der Google Cloud CLI können Sie benutzerdefinierte Umgebungsvariablen hinzufügen, aktualisieren oder entfernen.
Reservierte Namen
Die integrierten Umgebungsvariablen die für Workflows definiert wurden, sind reserviert und können nicht festgelegt werden.
Beachten Sie, dass Sie beim Definieren von Umgebungsvariablen für Workflows:
Schlüssel | Beschreibung |
---|---|
Leer ('' ) |
Schlüssel dürfen keine leeren Strings sein. |
GOOGLE_ |
Schlüssel dürfen nicht das Präfix GOOGLE_ enthalten. |
WORKFLOWS_ |
Schlüssel dürfen nicht das Präfix WORKFLOWS_ enthalten. |
Umgebungsvariablen festlegen
Sie können beim Bereitstellen eines Workflows neue Variablen definieren oder vorhandene Variablen ersetzen. Weitere Informationen zu additiven Änderungen finden Sie in diesem Dokument unter Aktualisieren Sie stattdessen die Umgebungsvariablen.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf der Seite Workflows auf
Erstellen.Füllen Sie auf der Seite Workflow erstellen die entsprechenden Felder aus, um die Workflowdefinition zu konfigurieren.
Klicken Sie im Bereich Umgebungsvariablen (optional) auf Variable hinzufügen.
Geben Sie im Feld Name 1 den Variablennamen an.
Geben Sie im Feld Wert 1 den Variablenwert ein.
Wenn Sie eine weitere Variable hinzufügen möchten, klicken Sie auf Variable hinzufügen.
Klicken Sie auf Weiter.
Klicken Sie nach der Definition des Workflows auf Bereitstellen, um ihn bereitzustellen.
gcloud
Verwenden Sie das Flag --set-env-vars
, um eine Umgebungsvariable festzulegen:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1
Ersetzen Sie Folgendes:
WORKFLOW_NAME
: Die ID Ihres Workflows.KEY1=VALUE1
: der Name der Umgebungsvariablen und der zugehörige value; z. B.MONTH=January
.
Terraform
Verwenden Sie zum Erstellen eines Workflows die Ressource google_workflows_workflow
und ändern Sie die Datei main.tf
wie im Beispiel gezeigt. Weitere Informationen
Siehe
Workflow mit Terraform erstellen
Verwenden Sie das Argument user_env_vars
, um eine Umgebungsvariable mit
die Überarbeitung des Workflows.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Mehrere Umgebungsvariablen festlegen
Verwenden Sie zum Festlegen mehrerer Umgebungsvariablen eine durch Kommas getrennte Liste:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1,KEY2=VALUE2
Escape-Zeichen
Da das Komma (,
) zum Trennen von Umgebungsvariablen verwendet wird, gilt Folgendes:
Ihre Variablenwerte Kommas enthalten, müssen Sie ein anderes Trennzeichen angeben.
Zeichen, z. B. @
:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars ^@^KEY1=VALUE1,VALUE2,VALUE3@KEY2=VALUE2
Variablen in einer Datei speichern
Wenn Sie Ihre Variablen in einer Datei speichern möchten (z. B. unter Versionskontrolle), verwenden Sie eine YAML-Datei und das Flag --env-vars-file
:
gcloud workflows deploy WORKFLOW_NAME \ --env-vars-file FILE_PATH
Ersetzen Sie FILE_PATH
durch den Pfad zu einer lokalen YAML-Datei.
das die Definitionen für Ihre Umgebungsvariablen enthält. Die Variablennamen und ‑werte müssen Strings sein. Alle vorhandenen Umgebungsvariablen werden von Workflows entfernt, bevor die neuen Umgebungsvariablen hinzugefügt werden.
Der Inhalt der YAML-Datei könnte beispielsweise so aussehen:
KEY1: "value1" KEY2: "value2"
Weitere Informationen zum Befehl deploy
finden Sie unter gcloud workflows deploy
.
Auf Umgebungsvariablen zugreifen
Wenn Sie auf eine Umgebungsvariable zugreifen möchten, rufen Sie in einem Ausdruck die Funktion sys.get_env()
auf und übergeben Sie den Namen der Umgebungsvariablen als Parameter. Der Name der Umgebungsvariablen muss als String übergeben werden.
Im folgenden Workflow wird beispielsweise der Wert der Umgebung
Variable KEY1
in eine Workflow-Variable namens keyValue
und gibt dann Folgendes aus:
Wert:
main: steps: - init: assign: - keyValue: ${sys.get_env("KEY1")} - returnResult: return: ${keyValue}
Umgebungsvariablen aktualisieren
Sie können benutzerdefinierte Umgebungsvariablen für vorhandene Workflows aktualisieren. Dieses ist ein nicht-destruktiver Ansatz, bei dem Umgebungsvariablen geändert oder hinzugefügt werden, werden Variablen gelöscht.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf den Namen des Workflows, den Sie aktualisieren möchten.
Die Seite Workflowdetails wird angezeigt.
Führen Sie einen der folgenden Schritte aus, um eine vorhandene Umgebungsvariable zu bearbeiten:
Klicken Sie auf den Tab Details.
- Klicken Sie neben Umgebungsvariablen auf das Symbol .
- Nehmen Sie die gewünschten Änderungen vor.
- Klicken Sie auf Speichern, um den aktualisierten Workflow bereitzustellen.
Klicken Sie auf
Bearbeiten:- Nehmen Sie im Bereich Umgebungsvariablen (optional) die gewünschten Änderungen vor.
- Klicken Sie auf Weiter und dann auf Bereitstellen, um den aktualisierten Workflow bereitzustellen.
gcloud
Verwenden Sie das Flag --update-env-vars
, um eine Variable zu aktualisieren:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1
Wenn Sie mehrere Umgebungsvariablen aktualisieren möchten, verwenden Sie eine durch Kommas getrennte Liste:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Umgebungsvariablen löschen
Sie können benutzerdefinierte Umgebungsvariablen für vorhandene Workflows löschen.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf den Namen des Workflows, den Sie aktualisieren möchten.
Die Seite Workflow-Details wird angezeigt.
So löschen Sie eine vorhandene Umgebungsvariable:
Klicken Sie auf den Tab Details.
- Klicken Sie auf den entsprechenden
- Klicken Sie neben der Umgebungsvariablen, die Sie löschen möchten, auf das Symbol .
- Klicken Sie auf Speichern, um den aktualisierten Workflow bereitzustellen.
Klicken Sie auf
Bearbeiten.- Klicken Sie neben der Umgebungsvariablen, die Sie löschen möchten, auf das Symbol .
- Klicken Sie auf Weiter und dann auf Bereitstellen, um den aktualisierten Workflow bereitzustellen.
gcloud
Wenn Sie Umgebungsvariablen selektiv entfernen möchten, verwenden Sie die Methode
--remove-env-vars
-Flag:
gcloud workflows deploy WORKFLOW_NAME \ --remove-env-vars KEY1,KEY2
Alternativ können Sie alle zuvor festgelegten Umgebungsvariablen mit dem Flag --clear-env-vars
löschen:
gcloud workflows deploy WORKFLOW_NAME \ --clear-env-vars
Best Practices
Als Best Practice empfehlen wir, dass Sie sich nicht von Änderungen an Umgebungsvariablen verwenden, die Sie nicht explizit festgelegt haben. Wenn Sie andere Umgebungsvariablen als die von Ihnen explizit festgelegten ändern, kann dies zu unbeabsichtigten Folgen führen.
Secrets verwalten
Umgebungsvariablen können zum Konfigurieren von Workflows verwendet werden. Zum Speichern und Verwenden von Secrets wie Datenbankanmeldedaten oder API-Schlüsseln werden sie jedoch nicht empfohlen. Diese vertraulichen Werte sollten getrennt von Ihrem Quellcode und Ihren Umgebungsvariablen gespeichert und nicht versehentlich an Protokolle gesendet werden.
Für das Speichern von Secrets empfehlen wir Ihnen, die Best Practices für Secrets verwalten und folgen Sie der Anleitung, um Secret Manager mit Workflows verwenden.
Namenskonventionen
Als allgemeine Regel empfehlen wir, dass Schlüssel von Umgebungsvariablen ausschließlich aus Großbuchstaben, Ziffern und Unterstrichen (_
) bestehen und nicht mit einer Ziffer beginnen. Sie sollten Ihren benutzerdefinierten Umgebungsvariablen ein eindeutiges Präfix voranstellen, um Konflikte mit anderen Variablen zu vermeiden.
Größenbeschränkungen
Es können maximal 20 benutzerdefinierte Umgebungsvariablen definiert werden. Jedes
Der Definitionsstring (KEY=value
) ist auf 4 KiB begrenzt.