Sie können Workflows in der Google Cloud Console oder über die Google Cloud CLI entweder in Ihrem Terminal oder in Cloud Shell Sie können Workflows auch über die Workflows API verwalten.
Hinweis
Von Ihrer Organisation definierte Sicherheitsbeschränkungen verhindern möglicherweise, dass die folgenden Schritte ausgeführt werden. Informationen zur Fehlerbehebung finden Sie unter Anwendungen in einer eingeschränkten Google Cloud-Umgebung entwickeln.
Console
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Workflows API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Workflows API.
gcloud
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Workflows API:
gcloud services enable workflows.googleapis.com
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Workflows API:
gcloud services enable workflows.googleapis.com
REST
Wenn Sie Workflows mit der Workflows API verwalten möchten, empfehlen wir, den workflows.googleapis.com
-Dienst mit den von Google bereitgestellten Clientbibliotheken aufzurufen. Weitere Informationen finden Sie unter
Workflows API
Dienstkonto erstellen
Ein Dienstkonto steht für die Identität eines Workflows und bestimmt, Berechtigungen des Workflows und die Google Cloud-Ressourcen, die er hat Zugriff haben. Erstellen Sie ein Dienstkonto, falls Sie noch keines haben. und erteile sie dann die für das Projekt Workflows zu verwalten und Erstellen von Logs
Wenn Sie beim Erstellen des Workflows kein Dienstkonto angeben, für die Identität das Compute Engine-Standarddienstkonto verwendet. Weitere Informationen finden Sie unter Workflowberechtigungen für den Zugriff auf Google Cloud-Ressourcen gewähren.
Es wird dringend empfohlen, ein Dienstkonto mit den geringsten Berechtigungen zu verwenden, die für den Zugriff auf die erforderlichen Ressourcen erforderlich sind.
Um eine Ressource zu erstellen und ein Dienstkonto anzuhängen, benötigen Sie Berechtigungen zum Erstellen dieser Ressource und die Erlaubnis, sich als das Dienstkonto auszugeben, das Sie an die Ressource anhängen werden. Weitere Informationen finden Sie unter Dienstkontoberechtigungen:
Console
Rufen Sie in der Google Cloud Console die Seite Dienstkonten auf:
Wählen Sie ein Projekt aus und klicken Sie auf Dienstkonto erstellen.
Geben Sie im Feld Dienstkontoname einen Namen ein.
Der Name muss zwischen 6 und 30 Zeichen lang sein und alphanumerische Zeichen in Kleinschreibung sowie Bindestriche enthalten. Nachdem Sie ein Dienstkonto erstellt haben, können Sie den Namen nicht mehr ändern.
Klicken Sie auf Erstellen und fortfahren.
Klicken Sie auf Rolle auswählen.
Wählen Sie die folgenden Rollen aus und klicken Sie bei Bedarf auf Weitere Rolle hinzufügen:
- Um Workflows zu erstellen, zu aktualisieren und auszuführen, wählen Sie Workflows > Workflow-Editor.
- Wählen Sie zum Senden von Logs an Cloud Logging Logging > Logautor.
Klicken Sie auf Fertig, um das Erstellen des Dienstkontos abzuschließen.
gcloud
Erstellen Sie das Dienstkonto.
gcloud iam service-accounts create SERVICE_ACCOUNT
Gewähren Sie dem Dienstkonto Berechtigungen, indem Sie Rollen zuweisen.
Zum Erstellen, Aktualisieren und Ausführen von Workflows weisen Sie die Rolle
roles/workflows.editor
zu:gcloud projects add-iam-policy-binding PROJECT_ID \ --member "serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com" \ --role "roles/workflows.editor"
Um Logs an Cloud Logging zu senden, weisen Sie die Rolle
roles/logging.logWriter
zu:gcloud projects add-iam-policy-binding PROJECT_ID \ --member "serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com" \ --role "roles/logging.logWriter"
Ersetzen Sie Folgendes:
SERVICE_ACCOUNT
: der Name des Dienstkontos. Der Name des Dienstkontos muss zwischen 6 und 30 Zeichen lang sein und darf alphanumerische Zeichen in Kleinschreibung sowie Bindestriche enthalten. Nachdem Sie ein Dienstkonto erstellt haben, können Sie seinen Namen nicht mehr ändern.PROJECT_ID
ist die ID Ihres Projekts.
REST
Sie können die
serviceAccounts.create
zum Erstellen eines Dienstkontos. Weitere Informationen finden Sie unter Dienstkonten erstellen.
Sie können programmatisch mehrere Rollen gewähren, indem Sie die Zulassungsrichtlinie für eine Ressource mit der Methode setIamPolicy
ändern und festlegen. Weitere Informationen finden Sie unter
Mehrere Rollen programmatisch gewähren oder widerrufen
Workflow erstellen
Ein Workflow besteht aus einer Reihe von Schritten, die mit der Workflows-Syntax beschrieben werden. Diese kann entweder im YAML- oder JSON-Format geschrieben werden. Nachdem Sie einen Workflow definiert haben, stellen Sie ihn bereit, um ihn für die Ausführung verfügbar zu machen. Der Bereitstellungsschritt überprüft auch, ob die Quelldatei ausgeführt werden kann. Es schlägt fehl, wenn die Quelldatei keine gültige Workflowdefinition enthält.
Das Bearbeiten von YAML-Dateien kann fehleranfällig sein. Sie können Ihren Workflow mithilfe eines bevorzugten IDE oder Quellcode-Editor und Einrichten der automatischen Vervollständigung und Syntax , um Fehler zu reduzieren.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf
Erstellen.Geben Sie einen Namen für den Workflow ein, z. B.
myFirstWorkflow
. Der Name kann Buchstaben, Zahlen, Unterstriche und Bindestriche enthalten. Muss mit einem Buchstaben beginnen und mit einer Zahl oder einem Buchstaben enden.Optional können Sie eine Beschreibung des Workflows hinzufügen.
Wählen Sie in der Liste Region einen geeigneten Speicherort für die Bereitstellung des Workflows aus, z. B. us-central1.
Wählen Sie in der Liste Dienstkonto ein Dienstkonto aus, mit dem Ihr Workflow auf andere Google Cloud-Dienste zugreift. Weitere Informationen finden Sie unter Dienstkonto erstellen.
Führen Sie optional die folgenden Schritte aus:
Geben Sie die Ebene des Aufruf-Logging an, die Sie auf die Workflow-Definition anwenden möchten. Gehen Sie in der Liste Anrufprotokollebene so vor: Wählen Sie eine der folgenden Optionen aus:
- Nicht angegeben: Es wird keine Logging-Ebene angegeben. Das ist die Standardeinstellung. Eine Ausführungslogebene hat Vorrang vor einer Workflow-Logebene, sofern keine Ausführungslogebene angegeben ist (Standardeinstellung); In diesem Fall wird die Workflow-Logebene genutzt.
- Nur Fehler: Alle erfassten Ausnahmen sowie das Beenden eines Aufrufs aufgrund einer Ausnahme werden protokolliert.
- Alle Aufrufe: Alle Aufrufe von untergeordneten Workflows oder Bibliotheksfunktionen und deren Ergebnisse werden protokolliert.
- Keine Protokolle: Es werden keine Anrufe protokolliert.
Geben Sie den Cloud Key Management Service-Schlüssel an, den der Workflow für die Datenverschlüsselung verwenden soll: Wählen Sie Vom Kunden verwalteter Verschlüsselungsschlüssel (CMEK). Weitere Informationen finden Sie unter vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.
Geben Sie eine Umgebungsvariable an, auf die der Workflow zur Laufzeit zugreifen kann. Weitere Informationen finden Sie unter Umgebungsvariablen verwenden
Label hinzufügen: Labels sind Schlüssel/Wert-Paare, mit denen Sie Ihre Google Cloud-Instanzen organisieren können. Weitere Informationen finden Sie unter Was sind Labels? Workflowlabels werden von Workflowausführungen übernommen. Zum Ansehen Ausführungslabels verwenden, verwenden Sie die Methode
workflows.executions.list
, Workflowausführungen auflisten und filtern.Workflow planen: Wählen Sie Neuen Trigger hinzufügen > Cloud Scheduler aus. Weitere Informationen finden Sie unter Workflow mit Cloud Scheduler planen.
Workflow über ein Ereignis oder eine Pub/Sub-Nachricht auslösen: Wählen Sie Neuen Trigger hinzufügen > Eventarc aus. Weitere Informationen finden Sie unter Workflow mit Ereignissen oder Pub/Sub-Nachrichten auslösen.
Klicken Sie auf Next (Weiter).
Geben Sie im Workflow-Editor die Definition für Ihren Workflow ein. Beispiel-Workflow ansehen
Klicken Sie auf Bereitstellen.
gcloud
Achten Sie darauf, dass der Quellcode Ihres Workflows in einer YAML- oder JSON-Datei gespeichert ist, z. B.
MY_WORKFLOW.YAML
oderMY_WORKFLOW.JSON
. Sehen Sie sich einen Beispielworkflow an.Öffnen Sie ein Terminalfenster.
Sie können einen Workflow mithilfe der
gcloud workflows deploy
-Befehl:gcloud workflows deploy WORKFLOW_NAME \ --location=LOCATION \ --call-log-level=CALL_LOGGING_LEVEL \ --description="DESCRIPTION" \ --labels="LABEL_KEY=LABEL_VALUE" \ --set-env-vars="ENV_KEY=ENV_VALUE" \ --kms-key=ENCRYPT_KEY \ --service-account=SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com \ --source=YAML_OR_JSON_SOURCE_FILE
Ersetzen Sie Folgendes:
WORKFLOW_NAME
: der Name des Workflows, z. B.myFirstWorkflow
. Der Name kann Buchstaben, Zahlen, Unterstriche und Bindestriche enthalten. Er muss mit einem Buchstaben beginnen und mit einem enden eine Zahl oder einen Buchstaben.LOCATION
: die Region, in der Sie Ihren Workflow bereitstellen möchten, z. B.us-central1
.CALL_LOGGING_LEVEL
: Optional. Ebene des Aufruf-Logging, die während der Ausführung angewendet werden soll. Kann einer der folgenden Werte sein:none
: Es wird keine Logging-Ebene angegeben. Das ist die Standardeinstellung. Eine Ausführungslogebene hat Vorrang vor einer Workflow-Logebene, sofern keine Ausführungslogebene angegeben ist (Standardeinstellung); In diesem Fall wird die Workflow-Logebene genutzt.log-errors-only
: Es werden alle erfassten Ausnahmen sowie das Beenden eines Aufrufs aufgrund einer Ausnahme protokolliertlog-all-calls
: Alle Aufrufe von untergeordneten Workflows oder Bibliotheksfunktionen und deren Ergebnisse werden protokolliert.log-none
: Kein Aufruf-Logging.
DESCRIPTION
: Optional. Eine Beschreibung der zu optimieren.LABEL_KEY=LABEL_VALUE
: Optional. Liste von Label-Schlüssel/Wert-Paaren, mit denen Sie Ihre Google Cloud-Instanzen organisieren können, z. B.name=wrench
. Weitere Informationen finden Sie unter Was sind Labels? Workflowlabels werden von Workflowausführungen übernommen. Wenn Sie Ausführungslabels aufrufen möchten, verwenden Sie die Methodeworkflows.executions.list
, um Workflowausführungen aufzulisten und zu filtern.ENV_KEY=ENV_VALUE
: Optional. Liste der Schlüssel/Wert-Paare für Umgebungsvariablen, z. B.MONTH=January
. Für finden Sie unter Umgebungsvariablen verwendenENCRYPT_KEY
: Optional. Ein Cloud KMS-Schlüssel, der vom Workflow für die Datenverschlüsselung im Formatprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
verwendet werden soll. Weitere Informationen finden Sie unter vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: Optional. Das Dienstkonto, mit dem Ihr Workflow auf andere Google Cloud-Dienste zugreift. Weitere Informationen finden Sie in diesem Dokument Siehe Dienstkonto erstellen.YAML_OR_JSON_SOURCE_FILE
: die Quelldatei für Workflow-Definition. Beispiel:myFirstWorkflow.yaml
REST
Um einen neuen Workflow mit einem bestimmten Namen zu erstellen, verwenden Sie die Methode
projects.locations.workflows.create
und verwenden Sie den Abfrageparameter workflowId
, um eine ID für die
zu optimieren.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
WORKFLOW_NAME
: der Name Ihres Workflow, z. B.myFirstWorkflow
. Der Name kann Buchstaben, Ziffern, Unterstriche und Bindestriche. Er muss mit einem Buchstaben beginnen und mit einer Ziffer oder einem Buchstaben enden.DESCRIPTION
: Optional. Eine Beschreibung Ihres Workflows. Darf nicht länger als 1.000 Unicode-Zeichen sein.LABEL_KEY
undLABEL_VALUE
: optional. Eine Zuordnung eines Labels Schlüssel/Wert-Paare, mit denen Sie Ihre Google Cloud-Instanzen organisieren können. Beispiel:{"name": "wrench", "mass": "1kg", "count": "3"}
Weitere Informationen finden Sie unter Was sind Labels? Workflowlabels werden von Workflowausführungen übernommen. Wenn Sie Ausführungslabels aufrufen möchten, verwenden Sie die Methodeworkflows.executions.list
, um Workflowausführungen aufzulisten und zu filtern.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: optional. Dienst Konto, das Ihr Workflow für den Zugriff auf andere Google Cloud-Dienste verwendet. Die Projekt-ID lautet Ihre Google Cloud-Projekt-ID. Weitere Informationen in diesem Dokument finden Sie unter Erstellen Sie ein Dienstkonto.ENCRYPT_KEY
: Optional. A Cloud KMS-Schlüssel, den der Workflow für die Datenverschlüsselung im Format verwenden sollteprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
Weitere Informationen finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.CALL_LOGGING_LEVEL
: Optional. Die Protokollebene des Aufrufs, die während der Ausführung angewendet werden soll. Standardmäßig ist keine Logging-Ebene und stattdessen die Workflow-Log-Ebene gilt. Weitere Informationen finden Sie unter Logs an Logging senden Eine der folgenden Optionen:CALL_LOG_LEVEL_UNSPECIFIED
: Es ist keine Logging-Ebene angegeben und der Stattdessen wird die Workflowlogebene angewendet. Das ist die Standardeinstellung. Andernfalls gilt die Ausführungslogebene und hat Vorrang vor der Workflow-Logebene.LOG_ERRORS_ONLY
: alle erfassten Ausnahmen protokollieren; oder wenn ein Anruf aufgrund einer Ausnahme beendet.LOG_ALL_CALLS
: Alle Aufrufe an untergeordnete Workflows oder Bibliotheksfunktionen protokollieren und deren Ergebnisse.LOG_NONE
: Kein Aufruf-Logging.
ENV_KEY
undENV_VALUE
: Optional. Eine Zuordnung von Schlüssel-/Wert-Paaren für Umgebungsvariablen, z. B.{ "month": "January", "day": "Monday"}
. Weitere Informationen finden Sie unter Umgebungsvariablen verwendenSOURCE_CODE
: der Workflow Definition. In YAML-Dateien müssen Zeilenumbrüche mit einem Escapezeichen versehen werden. Beispiel:main:\n params:\n - input\n steps:\n - returnOutput:\n return: Hello
.Anführungszeichen müssen in JSON mit Escapezeichen versehen werden. Beispiel:
{\"main\":{\"params\":[\"input\"],\"steps\":[{\"returnOutput\":{\"return\":\"Hello\"}}]}}
LOCATION
: die Region, in der der Workflow bereitgestellt werden soll, z. B.us-central1
.
JSON-Text der Anfrage:
{ "name": "WORKFLOW_NAME", "description": "DESCRIPTION", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "serviceAccount": "SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com", "cryptoKeyName": "ENCRYPT_KEY", "callLogLevel": "CALL_LOGGING_LEVEL", "userEnvVars": {"ENV_KEY":"ENV_VALUE"}, "sourceContents": "SOURCE_CODE" }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von Operation
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.workflows.v1.OperationMetadata", "createTime": "2023-12-05T14:06:06.338390918Z", "target": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME", "verb": "create", "apiVersion": "v1" }, "done": false }
Wenn der Wert von "done"
false
ist, ist der Vorgang noch aktiv.
Workflows auflisten
Sie können Workflows auflisten oder mithilfe von Filtern einen bestimmten Workflow abrufen.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Auf dieser Seite werden Ihre Workflows an allen Standorten aufgelistet. Außerdem enthält sie Details wie Namen, Regionen, letzte Versionen usw.
So filtern Sie Ihre Workflows:
- Klicken Sie auf Filter. oder in das Feld Workflows filtern.
- Wählen Sie in der Liste Eigenschaften eine Option aus, nach der die Workflows gefiltert werden sollen.
Sie können ein einzelnes Attribut auswählen oder den logischen Operator
OR
verwenden, um weitere Attribute hinzuzufügen.Klicken Sie zum Sortieren der Workflows neben jeder unterstützten Spaltenüberschrift auf
Sortieren.
gcloud
Mit dem Befehl gcloud workflows list
Workflows auflisten:
gcloud workflows list --location=LOCATION
Ersetzen Sie LOCATION
durch die ID oder durch eine voll qualifizierte ID.
ID für den Ort Ihres Workflows.
Mit diesem Befehl werden Ihre Workflows am angegebenen Speicherort aufgelistet. Außerdem werden Details wie NAME
, STATE
, REVISION_ID
und UPDATE_TIME
eines Workflows angezeigt.
REST
Verwenden Sie die Methode projects.locations.workflows.list
, um Workflows in einem bestimmten Projekt und an einem bestimmten Standort aufzulisten.
Alternativ können Sie zum Abrufen der Details eines einzelnen Workflows die Methode
projects.locations.workflows.get
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID
: Ihre Google Cloud-Projekt-ID.LOCATION
: die Region, in der die Workflows bereitgestellt werden, z. B.us-central1
.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Instanzen von
Workflow
und die Antwort sollte in etwa so aussehen:
{ "workflows": [ { "name": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME", "state": "ACTIVE", "revisionId": "000001-0ce", "createTime": "2023-12-08T13:56:59.306770745Z", "updateTime": "2023-12-08T13:56:59.547021939Z", "revisionCreateTime": "2023-12-08T13:56:59.340161044Z", "serviceAccount": "projects/PROJECT_ID/serviceAccounts/PROJECT_NUMBER-compute@developer.gserviceaccount.com", "sourceContents": "main:\n params: [input]\n [...] return: '${wikiResult.body[1]}'\n" }, { object (Workflow) } ], "nextPageToken": string, "unreachable": [ string ] }
Workflow aktualisieren
Sie können einen vorhandenen Workflow aktualisieren. Sie müssen den Namen des Workflows angeben die Sie aktualisieren möchten, und deren Quelle. Sie können den Namen oder Speicherort eines Workflows nicht ändern.
Das Aktualisieren eines Workflows wirkt sich nicht auf laufende Ausführungen aus. Nur zukünftige Für Ausführungen des Workflows wird die aktualisierte Konfiguration verwendet.
Jedes Mal, wenn Sie einen Workflow aktualisieren, wird dessen versionID
aktualisiert. Der versionID
besteht aus zwei Teilen, die durch einen Bindestrich getrennt sind:
Eine Zahl, beginnend mit eins, die sich jedes Mal erhöht, wenn Sie einen Workflow aktualisieren.
Ein zufälliger, dreistelliger alphanumerischer String.
Beispiel: 000001-27f
gibt die ursprüngliche Version eines Workflows an und 000002-d52
einen Workflow, der einmal aktualisiert wurde.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf den Namen des Workflows, den Sie aktualisieren möchten. Beachten Sie, dass Sie den Namen des Workflows ändern.
Die Seite Workflow-Details wird angezeigt.
Sie haben folgende Möglichkeiten, den Workflow zu bearbeiten:
So bearbeiten Sie die Quelle:
- Klicken Sie auf den Tab Quelle.
- Klicken Sie auf Bearbeiten.
- Um die Änderungen zu speichern, klicken Sie auf Speichern. Der aktualisierte Workflow wird bereitgestellt.
So aktualisieren Sie die Beschreibung, das Dienstkonto, das der Workflow zur Authentifizierung verwendet, die Anrufprotokollebene, Umgebungsvariablen, Labels oder den Verschlüsselungsschlüssel:
- Klicken Sie auf den Tab Details.
- Klicken Sie auf das entsprechende Symbol .
- Wenn Sie die Ebene der Anrufliste aktualisieren, wählen Sie eine der folgenden Optionen aus:
- Nicht angegeben: Es wird keine Logging-Ebene angegeben. Das ist die Standardeinstellung. Eine Ausführungslogebene hat Vorrang vor einer Workflow-Logebene, sofern keine Ausführungslogebene angegeben ist (Standardeinstellung); In diesem Fall wird die Workflow-Logebene genutzt.
- Nur Fehler: Alle erfassten Ausnahmen sowie das Beenden eines Aufrufs aufgrund einer Ausnahme werden protokolliert.
- Alle Aufrufe: Alle Aufrufe von untergeordneten Workflows oder Bibliotheksfunktionen und deren Ergebnisse werden protokolliert.
- Keine Protokolle: Es werden keine Anrufe protokolliert.
- Wenn Sie ein vorhandenes Label aktualisieren oder ein neues hinzufügen, kann dies
auf zehn Minuten, damit das neue Label wirksam wird. Workflowlabels werden von den Ausführungen des Workflows übernommen. Um Ausführungslabels anzusehen,
verwenden Sie die Methode
workflows.executions.list
, Workflowausführungen auflisten und filtern. - Um die Änderungen zu speichern, klicken Sie auf Speichern. Der aktualisierte Workflow wird bereitgestellt.
Um die vorherigen Felder gleichzeitig zu bearbeiten oder ein Feld hinzuzufügen oder zu aktualisieren, Trigger:
- Klicken Sie auf Bearbeiten.
- Klicken Sie auf Weiter, um die Quelle zu bearbeiten.
- Klicken Sie auf Bereitstellen, um die Änderungen zu speichern und den aktualisierten Workflow bereitzustellen.
Wenn Sie die Rollen für Ihr Dienstkonto aktualisieren möchten, klicken Sie auf das Symbol Berechtigungen.
Hauptkonten sind Nutzer, Gruppen, Domains oder Dienstkonten. So aktualisieren Sie ein vorhandenes Hauptkonto:
- Suchen Sie eine Zeile mit dem Hauptkonto.
- Klicken Sie auf In diesem Element Hauptkonto bearbeiten Zeile.
- Klicken Sie auf . Weitere hinzufügen Rolle oder klicke auf Löschen. Rolle.
Wenn Sie eine Rolle hinzufügen, wählen Sie in der Liste Rolle auswählen eine geeignete Rolle aus.
Klicken Sie auf Weitere Rolle hinzufügen, um eine weitere Rolle hinzuzufügen.
Klicken Sie auf Speichern.
gcloud
Öffnen Sie ein Terminalfenster.
Suchen Sie den Namen des Workflows, den Sie aktualisieren möchten. Wenn Sie den Namen des Workflows nicht kennen, können Sie den folgenden Befehl eingeben, um alle Workflows aufzulisten:
gcloud workflows list
Suchen Sie die YAML- oder JSON-Datei, in der die Workflowquelle gespeichert ist, z. B.
WORKFLOW_NAME.YAML
oderWORKFLOW_NAME.JSON
.Sie können einen vorhandenen Workflow mit dem Befehl
gcloud workflows deploy
aktualisieren, um die Quelle, die Beschreibung, die Labels, die Umgebungsvariablen, die Anrufprotokollebene, den Verschlüsselungsschlüssel oder das zugehörige Dienstkonto zu ändern.Sie müssen den Namen des zu aktualisierenden Workflows und seine Quelle angeben. Die restlichen Flags sind jedoch optional. Verwenden Sie das Flag
--clear-kms-key
, um einen vom Kunden verwalteten Verschlüsselungsschlüssel zu entfernen.gcloud workflows deploy WORKFLOW_NAME \ --call-log-level=CALL_LOGGING_LEVEL \ --description="DESCRIPTION" \ --labels="LABEL_KEY=LABEL_VALUE" \ --set-env-vars="ENV_KEY=ENV_VALUE" \ --kms-key=ENCRYPT_KEY \ --service-account=SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com \ --source=YAML_OR_JSON_SOURCE_FILE
Ersetzen Sie Folgendes:
WORKFLOW_NAME
: erforderlich. Der Name Ihres Workflows.CALL_LOGGING_LEVEL
: Optional. Niveau von Anruf-Logging für den zu optimieren. Kann einer der folgenden Werte sein:none
: Es wird keine Logging-Ebene angegeben. Das ist die Standardeinstellung. Eine Ausführungslogebene hat Vorrang vor einer Workflow-Logebene, sofern keine Ausführungslogebene angegeben ist (Standardeinstellung); In diesem Fall wird die Workflow-Logebene genutzt.log-errors-only
: Es werden alle erfassten Ausnahmen sowie das Beenden eines Aufrufs aufgrund einer Ausnahme protokolliertlog-all-calls
: Alle Aufrufe von untergeordneten Workflows oder Bibliotheksfunktionen und deren Ergebnisse werden protokolliert.log-none
: Kein Aufruf-Logging.
DESCRIPTION
: Optional. Eine Beschreibung der zu optimieren.LABEL_KEY=LABEL_VALUE
: Optional. Liste der Label-Schlüssel/Wert-Paare, mit denen Sie Ihre Google Cloud-Instanzen z. B.name=wrench
. Weitere Informationen finden Sie unter Was sind Labels? Workflowlabels werden bei Ausführungen des Workflows übernommen. Zum Ansehen Ausführungslabels verwenden, verwenden Sie die Methodeworkflows.executions.list
, Workflowausführungen auflisten und filtern.ENV_KEY=ENV_VALUE
: Optional. Liste der Schlüssel/Wert-Paare für Umgebungsvariablen, z. B.MONTH=January
. Für finden Sie unter Umgebungsvariablen verwendenENCRYPT_KEY
: Optional. Ein Cloud KMS Schlüssel, den der Workflow für die Datenverschlüsselung im Format verwenden sollprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
Weitere Informationen finden Sie unter vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: Optional. Das Dienstkonto, mit dem Ihr Workflow auf andere Google Cloud-Dienste zugreift. Wenn Sie die Rollen für Ihr Dienstkonto aktualisieren möchten, lesen Sie die Hilfeartikel Zugriff auf Google Cloud-Ressourcen für einen Workflow gewähren und Zugriff auf Projekte, Ordner und Organisationen verwalten.YAML_OR_JSON_SOURCE_FILE
: erforderlich. Die Quelle für den Workflow entweder im YAML- oder im JSON-Format. Beispiel:myFirstWorkflow.yaml
.
REST
Um einen vorhandenen Workflow zu aktualisieren, verwenden Sie die
projects.locations.workflows.patch
und optional den Abfrageparameter updateMask
verwenden, um eine Liste anzugeben
der zu aktualisierenden Felder.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
WORKFLOW_NAME
: Der Name Ihres Workflows, z. B.myFirstWorkflow
.DESCRIPTION
: Optional. Eine Beschreibung Ihres Workflows. Darf nicht länger als 1.000 Unicode-Zeichen sein.LABEL_KEY
undLABEL_VALUE
: Optional. Eine Zuordnung von Labelschlüsseln und ‑werten, mit der Sie Ihre Google Cloud-Instanzen organisieren können. Hier einige Beispiele:{"name": "wrench", "mass": "1kg", "count": "3"}
Weitere Informationen finden Sie unter Was sind Labels? Arbeitsablauf Labels werden von Ausführungen des Workflows übernommen. Wenn Sie Ausführungslabels aufrufen möchten, verwenden Sie die Methodeworkflows.executions.list
, um Workflowausführungen aufzulisten und zu filtern.SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
: optional. Dienst Konto, das Ihr Workflow für den Zugriff auf andere Google Cloud-Dienste verwendet. Die Projekt-ID ist Ihre Google Cloud-Projekt-ID. Weitere Informationen in diesem Dokument finden Sie unter Erstellen Sie ein Dienstkonto.ENCRYPT_KEY
: Optional. Ein Cloud KMS-Schlüssel, der vom Workflow für die Datenverschlüsselung im Formatprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
verwendet werden soll. Weitere Informationen finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden.CALL_LOGGING_LEVEL
: Optional. Die Protokollebene des Aufrufs, die während der Ausführung angewendet werden soll. Standardmäßig ist keine Logging-Ebene und stattdessen die Workflow-Log-Ebene gilt. Weitere Informationen finden Sie unter Logs an Logging senden. Eine der folgenden Optionen:CALL_LOG_LEVEL_UNSPECIFIED
: Es ist keine Logging-Ebene angegeben und der Stattdessen wird die Workflowlogebene angewendet. Das ist die Standardeinstellung. Andernfalls gilt die Ausführungslogebene und hat Vorrang vor der Workflow-Logebene.LOG_ERRORS_ONLY
: alle erfassten Ausnahmen protokollieren; oder wenn ein Anruf aufgrund einer Ausnahme beendet.LOG_ALL_CALLS
: Alle Aufrufe an untergeordnete Workflows oder Bibliotheksfunktionen protokollieren und deren Ergebnisse.LOG_NONE
: Kein Aufruf-Logging.
ENV_KEY
undENV_VALUE
: Optional. Eine Zuordnung von Schlüssel-/Wert-Paaren für Umgebungsvariablen, z. B.{ "month": "January", "day": "Monday"}
. Weitere Informationen finden Sie unter Umgebungsvariablen verwenden.SOURCE_CODE
: der reduzierte Workflow Definition. Beispiel:{\"main\":{\"params\":[\"input\"],\"steps\":[{\"returnOutput\":{\"return\":\"Hello\"}}]}}
.LOCATION
: die Region, in der der Workflow bereitgestellt wird, z. B.us-central1
.UPDATE_FIELDS
: Optional. A eine durch Kommas getrennte Liste der zu aktualisierenden Felder. Wenn Sie keine Angabe machen, wird der gesamte Workflow aktualisiert. Beispiel:description,callLogLevel
.
JSON-Text der Anfrage:
{ "name": "WORKFLOW_NAME", "description": "DESCRIPTION", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "serviceAccount": "SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com", "cryptoKeyName": "ENCRYPT_KEY", "callLogLevel": "CALL_LOGGING_LEVEL", "userEnvVars": {"ENV_KEY":"ENV_VALUE"}, "sourceContents": "SOURCE_CODE" }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von Operation
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.workflows.v1.OperationMetadata", "createTime": "2023-12-05T14:06:06.338390918Z", "target": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME", "verb": "update", "apiVersion": "v1" }, "done": false }
Wenn der Wert von "done"
false
ist, ist der Vorgang noch aktiv.
Workflow löschen
Sie können einen vorhandenen Workflow löschen. Beim Löschen eines Workflows werden auch die zugehörigen und bricht alle aktiven Ausführungen für den Workflow ab.
Console
Öffnen Sie in der Google Cloud Console die Seite Workflows.
Klicken Sie auf den Namen des Workflows, den Sie löschen möchten,
Löschen.Geben Sie den Namen des Workflows ein, wenn Sie aufgefordert werden, das Löschen zu bestätigen.
Klicken Sie auf Bestätigen.
gcloud
Öffnen Sie ein Terminalfenster.
Suchen Sie den Namen des Workflows, den Sie löschen möchten. Wenn Sie den Namen des Workflows nicht kennen, können Sie den folgenden Befehl eingeben, um alle Workflows aufzulisten:
gcloud workflows list
Löschen Sie einen Workflow mithilfe des
gcloud workflows delete
-Befehl:gcloud workflows delete WORKFLOW_NAME
Ersetzen Sie
WORKFLOW_NAME
durch den Namen Ihres Workflows.
REST
Wenn Sie einen Workflow mit einem bestimmten Namen löschen möchten, verwenden Sie die Methode projects.locations.workflows.delete
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
WORKFLOW_NAME
: Der Name des Workflows, den Sie löschen möchten.PROJECT_ID
: Ihre Google Cloud-Projekt-ID.LOCATION
: die Region, in der der Workflow bereitgestellt wird – für Beispiel:us-central1
.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation
:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.workflows.v1.OperationMetadata", "createTime": "2023-12-05T14:06:06.338390918Z", "target": "projects/PROJECT_ID/locations/LOCATION/workflows/WORKFLOW_NAME", "verb": "delete", "apiVersion": "v1" }, "done": false }
Wenn der Wert von "done"
false
ist, ist der Vorgang noch aktiv.