Workflows erstellen und verwalten

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 auch Workflows über die Workflows API verwalten.

Hinweise

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

  1. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  2. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  3. Workflows API aktivieren

    Aktivieren Sie die API

gcloud

  1. Aktivieren Sie Cloud Shell in der Google Cloud Console.

    Cloud Shell aktivieren

    Unten in der Google Cloud Console wird eine Cloud Shell-Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung, in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.

  2. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

  3. Workflows API aktivieren

    gcloud services enable workflows.googleapis.com
    

REST

Zum Verwalten von Workflows mit der Workflows API empfehlen wir, dass Sie die von Google bereitgestellten Clientbibliotheken zum Aufrufen der workflows.googleapis.com-Dienst. Weitere Informationen finden Sie unter Workflows API

Dienstkonto erstellen

Ein Dienstkonto stellt die Identität eines Workflows dar und bestimmt, Berechtigungen des Workflows und die Google Cloud-Ressourcen, die er hat access. 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 des Workflows 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.

Zum Erstellen einer Ressource und Anhängen eines Dienstkontos benötigen Sie zum Erstellen dieser Ressource und zum Übernehmen der Identität des Dienstkontos, die Sie an die Ressource anhängen. Weitere Informationen finden Sie unter Dienstkontoberechtigungen:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Dienstkonten auf:

    Zur Seite „Dienstkonten“

  2. Wählen Sie ein Projekt aus und klicken Sie auf Dienstkonto erstellen.

  3. 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 seinen Namen nicht mehr ändern.

  4. Klicken Sie auf Erstellen und fortfahren.

  5. Klicken Sie auf Rolle auswählen.

  6. Wählen Sie die folgenden Rollen aus und klicken Sie bei Bedarf auf Weitere Rolle hinzufügen:

    1. Um Workflows zu erstellen, zu aktualisieren und auszuführen, wählen Sie Workflows > Workflow-Editor.
    2. Wählen Sie zum Senden von Logs an Cloud Logging Logging > Logautor.
  7. Klicken Sie auf Fertig, um das Erstellen des Dienstkontos abzuschließen.

gcloud

  1. Erstellen Sie das Dienstkonto.

    gcloud iam service-accounts create SERVICE_ACCOUNT
  2. Gewähren Sie dem Dienstkonto Berechtigungen, indem Sie Rollen zuweisen.

    1. Weisen Sie zum Erstellen, Aktualisieren und Ausführen von Workflows die Rolle roles/workflows.editor:

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member "serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com" \
          --role "roles/workflows.editor"
      
    2. Weisen Sie zum Senden von Logs an Cloud Logging den roles/logging.logWriter zu Rolle:

      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 zuweisen, indem Sie das Feld Zulassungsrichtlinie für eine Ressource mithilfe der setIamPolicy . 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, ausgeführt werden kann. 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.

<ph type="x-smartling-placeholder">

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Workflows.

    Zur Seite "Workflows"

  2. Klicken Sie auf  Erstellen.

  3. 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.

  4. Fügen Sie optional eine Beschreibung des Workflows hinzu.

  5. Wählen Sie in der Liste Region eine geeignete Region aus. Standort für die Bereitstellung des Workflows für Beispiel: us-central1.

  6. Wählen Sie in der Liste Dienstkonto ein Dienstkonto aus, Workflow verwendet, um auf andere Google Cloud-Dienste zuzugreifen. Weitere Informationen In diesem Dokument finden Sie Erstellen Sie ein Dienstkonto.

  7. Führen Sie optional die folgenden Schritte aus:

    1. 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: keine Anrufprotokollierung.
    2. 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.

    3. Geben Sie eine Umgebungsvariable an, auf die der Workflow zur Laufzeit zugreifen kann. Weitere Informationen finden Sie unter Umgebungsvariablen verwenden

    4. 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 bei Ausführungen des Workflows übernommen. Zum Ansehen Ausführungslabels verwenden, verwenden Sie die Methode workflows.executions.list, Workflowausführungen auflisten und filtern.

    5. Workflow planen: Wählen Sie Neuen Trigger hinzufügen > Cloud Scheduler aus. Weitere Informationen finden Sie unter Workflow mit Cloud Scheduler planen.

    6. 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.

  8. Klicken Sie auf Next (Weiter).

  9. Geben Sie im Workflow-Editor die Definition für Ihren Workflow ein. Beispiel-Workflow ansehen

  10. Klicken Sie auf Bereitstellen.

gcloud

  1. Achten Sie darauf, dass der Quellcode Ihres Workflows in einer YAML- oder JSON-Datei gespeichert ist, z. B. MY_WORKFLOW.YAML oder MY_WORKFLOW.JSON. Sehen Sie sich einen Beispielworkflow an.

  2. Öffnen Sie ein Terminalfenster.

  3. 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 Ihres Workflows – für Beispiel: myFirstWorkflow. Der Name kann Buchstaben, Ziffern, Unterstriche und Bindestriche. Sie 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: für Beispiel: 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 wurde 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 protokolliert
      • log-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 Methode workflows.executions.list, Workflowausführungen auflisten und filtern.

    • ENV_KEY=ENV_VALUE: Optional. Liste der Schlüssel/Wert-Paare der Umgebungsvariable z. B. MONTH=January. Für finden Sie unter Umgebungsvariablen verwenden

    • ENCRYPT_KEY: Optional. Ein Cloud KMS Schlüssel, den der Workflow für die Datenverschlüsselung im Format verwenden soll projects/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. 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 und LABEL_VALUE: optional. Eine Zuordnung eines Labels Schlüssel/Wert-Paare, mit denen 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. Verwenden Sie zum Anzeigen von Ausführungslabels den workflows.executions.list-Methode für Workflowausführungen auflisten und filtern. <ph type="x-smartling-placeholder">
  • SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com: optional. Dienst Konto, mit dem Ihr Workflow auf andere Google Cloud-Dienste zugreift. 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 sollte projects/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 Folgendes: <ph type="x-smartling-placeholder">
      </ph>
    • CALL_LOG_LEVEL_UNSPECIFIED: Es ist keine Logging-Ebene angegeben und der Stattdessen wird die Workflowlogebene angewendet. Das ist die Standardeinstellung. Andernfalls wird die Ebene gilt 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 und ENV_VALUE: optional. Eine Karte mit Schlüssel/Wert-Paare für Umgebungsvariablen; zum Beispiel { "month": "January", "day": "Monday"} Weitere Informationen finden Sie unter Umgebungsvariablen verwenden
  • SOURCE_CODE: der Workflow Definition. Neue Zeilen müssen in YAML mit Escapezeichen versehen werden. Beispiel: main:\n params:\n - input\n steps:\n - returnOutput:\n return: Hello.

    In JSON müssen Sie Anführungszeichen mit Escapezeichen versehen. Beispiel: {\"main\":{\"params\":[\"input\"],\"steps\":[{\"returnOutput\":{\"return\":\"Hello\"}}]}}

  • LOCATION: die Region, in der der Workflow bereitgestellt werden soll – für Beispiel: 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

  1. Öffnen Sie in der Google Cloud Console die Seite Workflows.

    Zur Seite "Workflows"

    Auf dieser Seite sind Ihre Workflows an allen Standorten aufgelistet. Sie finden dort Details wie z. B. Namen, Regionen oder aktuelle Überarbeitungen.

  2. So filtern Sie Ihre Workflows:

    1. Klicken Sie auf Filter. oder in das Feld Workflows filtern.
    2. 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.

  3. Um Ihre Workflows zu sortieren, klicken Sie neben einer unterstützten Spaltenüberschrift auf Sortieren.

gcloud

Listen Sie Workflows mithilfe der gcloud workflows list-Befehl:

gcloud workflows list --location=LOCATION

Ersetzen Sie LOCATION durch die ID oder durch eine voll qualifizierte ID. ID für den Ort Ihres Workflows.

Dieser Befehl listet Ihre Workflows am angegebenen Speicherort auf und enthält Details wie NAME, STATE, REVISION_ID und UPDATE_TIME.

REST

Verwenden Sie zum Auflisten von Workflows in einem bestimmten Projekt und Standort die Methode projects.locations.workflows.list .

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 – für Beispiel: 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. Beachten Sie, dass Sie den Namen eines Workflows nicht ändern können oder einen bestimmten Standort haben.

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.

Beispielsweise gibt 000001-27f die Anfangsversion eines Workflows an und 000002-d52 gibt einen Workflow an, der einmal aktualisiert wurde.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Workflows.

    Zur Seite "Workflows"

  2. Klicken Sie auf den Namen des Workflows, den Sie aktualisieren möchten. Beachten Sie, dass Sie den Namen des Workflows ändern.

    Die Seite Workflowdetails wird angezeigt.

  3. Sie können den Workflow so bearbeiten:

    • So bearbeiten Sie die Quelle:

      1. Klicken Sie auf den Tab Quelle.
      2. Klicken Sie auf Bearbeiten.
      3. Um die Änderungen zu speichern, klicken Sie auf Speichern. Der aktualisierte Workflow ist bereitgestellt.
    • Das Dienstkonto, für das der Workflow verwendet wird, um die Beschreibung zu aktualisieren die Authentifizierung, die Ebene des Anrufprotokolls, Umgebungsvariablen, Labels oder den Verschlüsselungsschlüssel:

      1. Klicken Sie auf den Tab Details.
      2. Klicken Sie auf den entsprechenden .
      3. Wenn Sie die Ebene der Anrufliste aktualisieren, wählen Sie eine der folgenden Optionen aus: <ph type="x-smartling-placeholder">
          </ph>
        • 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: keine Anrufprotokollierung.
      4. Wenn Sie ein vorhandenes Label aktualisieren oder ein neues hinzufügen, kann dies auf zehn Minuten, damit das neue Label wirksam wird. Workflowlabels sind von Ausführungen des Workflows übernommen. Um Ausführungslabels anzusehen, verwenden Sie die Methode workflows.executions.list, Workflowausführungen auflisten und filtern.
      5. Um die Änderungen zu speichern, klicken Sie auf Speichern. Der aktualisierte Workflow ist bereitgestellt.
    • Um die vorherigen Felder gleichzeitig zu bearbeiten oder ein Feld hinzuzufügen oder zu aktualisieren, Trigger:

      1. Klicken Sie auf Bearbeiten:
      2. Klicken Sie auf Weiter, um die Quelle zu bearbeiten.
      3. Um Ihre Änderungen zu speichern und den aktualisierten Workflow bereitzustellen, klicken Sie auf Bereitstellen.
  4. Wenn Sie die Rollen für Ihr Dienstkonto aktualisieren möchten, klicken Sie auf das Symbol Berechtigungen.

    1. Hauptkonten sind Nutzer, Gruppen, Domains oder Dienstkonten. Zum Aktualisieren einem vorhandenen Hauptkonto:

      1. Suchen Sie eine Zeile mit dem Hauptkonto.
      2. Klicken Sie auf In diesem Element Hauptkonto bearbeiten Zeile.
      3. Klicken Sie auf . Weitere hinzufügen Rolle oder klicke auf Löschen. Rolle.
    2. Wenn Sie eine Rolle hinzufügen möchten, wählen Sie aus der Liste Rolle auswählen eine aus. Rolle spielt.

    3. Wenn Sie eine weitere Rolle hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen.

    4. Klicken Sie auf Speichern.

gcloud

  1. Öffnen Sie ein Terminalfenster.

  2. 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
    
  3. Suchen Sie die YAML- oder JSON-Datei, in der die Workflowquelle gespeichert ist. wie WORKFLOW_NAME.YAML oder WORKFLOW_NAME.JSON.

  4. Sie können einen vorhandenen Workflow aktualisieren, um seine Quelle, Labels, Umgebungsvariablen, die Ebene des Anrufprotokolls, den Verschlüsselungsschlüssel oder verknüpftes Dienstkonto mithilfe der gcloud workflows deploy .

    Sie müssen den Namen des Workflows, den Sie aktualisieren möchten, sowie dessen Quelle; Die übrigen Flags sind jedoch optional. So entfernen Sie ein vom Kunden verwalteten Verschlüsselungsschlüssel verwenden Sie das Flag --clear-kms-key.

    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 wurde 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 protokolliert
      • log-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 Methode workflows.executions.list, Workflowausführungen auflisten und filtern.

    • ENV_KEY=ENV_VALUE: Optional. Liste der Schlüssel/Wert-Paare der Umgebungsvariable z. B. MONTH=January. Für finden Sie unter Umgebungsvariablen verwenden

    • ENCRYPT_KEY: Optional. Ein Cloud KMS Schlüssel, den der Workflow für die Datenverschlüsselung im Format verwenden soll projects/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 Ihre Dienstkonto sehen, siehe Workflowberechtigungen für den Zugriff auf Google Cloud-Ressourcen 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:

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

  1. Öffnen Sie in der Google Cloud Console die Seite Workflows.

    Zur Seite "Workflows"

  2. Klicken Sie auf den Namen des Workflows, den Sie löschen möchten, Löschen.

  3. Geben Sie den Namen des Workflows ein, wenn Sie aufgefordert werden, das Löschen zu bestätigen.

  4. Klicken Sie auf Bestätigen.

gcloud

  1. Öffnen Sie ein Terminalfenster.

  2. 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
    
  3. Löschen Sie einen Workflow mithilfe des gcloud workflows delete-Befehl:

    gcloud workflows delete WORKFLOW_NAME
    

    Ersetzen Sie WORKFLOW_NAME durch den Namen Ihres zu optimieren.

REST

Um einen Workflow mit einem bestimmten Namen zu löschen, verwenden Sie die projects.locations.workflows.delete .

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • WORKFLOW_NAME: der Name des 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.

Nächste Schritte