Mithilfe von Workflows nacheinander starten und Workflows parallel starten kann ein Workflow für mehrere ausgewählte Objekte ausgeführt werden.

Die beiden Workflows Workflows nacheinander starten und Workflows parallel starten können nicht direkt ausgeführt werden. Stattdessen müssen sie in einen anderen Workflow eingeschlossen werden. Zur Anwendung von Workflows nacheinander starten und Workflows parallel starten auf mehrere ausgewählte Objekte müssen Sie die Objekte abrufen, für die der jeweilige Workflow ausgeführt werden soll. Diese Objekte und alle anderen Eingabeparameter, die der Workflow erfordert, müssen als Eigenschaften-Array übergeben werden. Bei Workflows nacheinander starten und Workflows parallel starten werden die ausgewählten Objekte als Array von WorkflowToken-Objekten ausgeführt.

Sie implementieren die Workflows Workflows nacheinander starten und Workflows parallel starten auf dieselbe Art und Weise. Bei Workflows nacheinander starten werden die Workflows für alle Objekte nacheinander ausgeführt. Bei Workflows parallel starten werden die Workflows für alle Objekte gleichzeitig ausgeführt.

Voraussetzungen

Öffnen Sie einen Workflow zur Bearbeitung im Workfloweditor.

Prozedur

  1. Fügen Sie dem Workflowschema ein Skriptfähige Aufgabe-Element oder ein Aktionselement hinzu, um eine Liste der Objekte zu erhalten, für die der Workflow ausgeführt werden soll.
    Wenn die Ausführung zum Beispiel für alle virtuellen Maschinen in einem entsprechenden Ordner erfolgen soll, fügen Sie dem Workflow die Aktion getAllVirtualMachinesByFolder hinzu.
  2. Verknüpfen Sie das Skriptelement oder die Skriptaktion und binden Sie das Element oder die Aktion an Workfloweingaben oder -variablen.
    Binden Sie beispielsweise die vmFolder-Eingabe der getAllVirtualMachinesByFolder-Aktion an einen Workflow-Eingabeparameter und die actionResult-Ausgabe an eine Workflowvariable im aufrufenden Workflow.
  3. Fügen Sie ein Skriptfähige Aufgabe-Element hinzu, um die Liste der Objekte in ein Eigenschaften-Array umzuwandeln.
    Wenn es sich bei den Objekten, für die der Workflow ausgeführt werden soll, beispielsweise um ein Array von virtuellen Maschinen handelt ( allVMs), das die actionResult-Ausgabe der Aktion getAllVirtualMachinesByFolder zurückgegeben hat, können die Objekte mithilfe des folgenden Skripts in ein Eigenschaften-Array umgewandelt werden.
    propsArray = new Array();
    
    for each (var vm in allVMs) {
     var prop = new Properties();
     prop.put("vm", vm);
     propsArray.push(prop);
    }
  4. Binden Sie die Ein- und Ausgaben der skriptfähigen Aufgabe an Workflowvariablen.
    Im Beispiel für ein Skriptfähige Aufgabe-Element in Schritt 3 binden Sie beispielsweise die Eingabe an das allVMs-Array von virtuellen Maschinen und erstellen die propsArray-Ausgabevariable als Array von Properties-Objekten.
  5. Fügen Sie dem Workflowschema ein Workflowelement hinzu.
  6. Wählen Sie entweder Workflows nacheinander starten oder Workflows parallel starten aus und verknüpfen Sie das Workflowelement mit den anderen Elementen.
  7. Zum Ausführen mit Objekten binden Sie die wf-Eingabe für Workflows nacheinander starten oder Workflows parallel starten an den Workflow.
    Wählen Sie beispielsweise zum Entfernen von Snapshots von allen virtuellen Maschinen, die von der getAllVirtualMachinesByFolder-Aktion zurückgegeben wurden, den Workflow Alle Snapshots entfernen aus.
  8. Binden Sie die parameters-Eingabe von Workflows nacheinander starten oder Workflows parallel starten an das Array von Properties-Objekten, für die der Workflow ausgeführt werden soll.
    Binden Sie zum Beispiel die parameters-Eingabe an die in Schritt 4 definierte propsArray-Variable.
  9. (Optional) Binden Sie die workflowTokens-Ausgabe von Workflows nacheinander starten oder Workflow parallel starten an eine Variable im Workflow.
  10. (Optional) Fügen Sie weitere Elemente hinzu, die die Ergebnisse des Workflows Workflows nacheinander starten oder Workflows parallel starten nutzen.

Ergebnisse

Sie haben einen Workflow erstellt, bei dem der Workflow Workflows nacheinander starten oder Workflows parallel starten für eine Auswahl von Objekten ausgeführt wird.