Beim Binden einer Pipeline-Aufgabe erstellen Sie eine Abhängigkeit für die Aufgabe, wenn die Pipeline ausgeführt wird. Zum Erstellen einer Bindung für eine Pipeline-Aufgabe stehen mehrere Möglichkeiten zur Verfügung. Sie können eine Aufgabe an eine andere Aufgabe, an eine Variable, einen Ausdruck oder an eine Bedingung binden.
Vorgehensweise zum Anwenden von Dollarbindungen auf Cloud-Vorlagenvariablen in einer Cloud-Vorlagenaufgabe
Sie können Dollarbindungen auf Cloud-Vorlagenvariablen in einer Cloud-Vorlagenaufgabe der Code Stream-Pipeline anwenden. Die Art und Weise, wie Sie die Variablen in Code Stream ändern, richtet sich nach der Kodierung der Variableneigenschaften in der Cloud-Vorlage.
Wenn Sie Dollarbindungen in einer Cloud-Vorlagenaufgabe verwenden müssen, die aktuelle Version der in der Cloud-Vorlagenaufgabe verwendeten Cloud-Vorlage dies aber nicht zulässt, ändern Sie die Cloud-Vorlage in Cloud Assembly und stellen Sie eine neue Version bereit. Verwenden Sie anschließend die neue Cloud-Vorlagenversion in Ihrer Cloud-Vorlagenaufgabe und fügen Sie die Dollarbindungen bei Bedarf hinzu.
Zum Anwenden von Dollarbindungen auf die von der Cloud Assembly-Cloud-Vorlage bereitgestellten Eigenschaftstypen benötigen Sie die entsprechenden Berechtigungen.
- Sie müssen dieselbe Rolle wie die Person aufweisen, die die Bereitstellung der Cloud-Vorlage in Cloud Assembly erstellt hat.
- Die Person, die die Pipeline modelliert, und die Person, die die Pipeline ausführt, können zwei verschiedene Benutzer mit unterschiedlichen Rollen sein.
- Wenn ein Entwickler mit der Rolle „ Code Stream-Executor“ die Pipeline modelliert, muss der Entwickler auch dieselbe Cloud Assembly-Rolle wie die Person aufweisen, die die Cloud-Vorlage bereitgestellt hat. Die notwendige Rolle kann beispielsweise „Cloud Assembly-Administrator“ lauten.
- Nur die Person, die die Pipeline modelliert, kann die Pipeline und die Bereitstellung erstellen, da sie über die Berechtigung verfügt.
So verwenden Sie ein API-Token in der Cloud-Vorlagenaufgabe:
- Die Person, die die Pipeline modelliert, kann ein API-Token an einen anderen Benutzer mit der Rolle „ Code Stream-Executor“ übergeben. Wenn der Executor die Pipeline dann ausführt, verwendet er das API-Token und die Anmeldedaten, die vom API-Token erstellt werden.
- Wenn ein Benutzer das API-Token in der Cloud-Vorlagenaufgabe eingibt, werden die Anmeldedaten erstellt, die für die Pipeline notwendig sind.
- Klicken Sie zum Verschlüsseln des API-Tokenwerts auf Variable erstellen.
- Wenn Sie keine Variable für das API-Token erstellen und es in der Cloud-Vorlagenaufgabe verwenden, wird der Wert des API-Tokens im Klartext angezeigt.
Führen Sie die folgenden Schritte aus, um Dollarbindungen auf Cloud-Vorlagenvariablen in einer Cloud-Vorlagenaufgabe anzuwenden.
Sie beginnen mit einer Cloud-Vorlage, für die Eigenschaften der Eingabevariablen definiert sind, wie z. B. integerVar
, stringVar
, flavorVar
, BooleanVar
, objectVar
und arrayVar
. Sie finden die definierten Image-Eigenschaften im Abschnitt resources
. Die Eigenschaften im Code der Cloud-Vorlage ähneln unter Umständen Folgendem:
formatVersion: 1 inputs: integerVar: type: integer encrypted: false default: 1 stringVar: type: string encrypted: false default: bkix flavorVar: type: string encrypted: false default: medium BooleanVar: type: boolean encrypted: false default: true objectVar: type: object encrypted: false default: bkix2: bkix2 arrayVar: type: array encrypted: false default: - '1' - '2' resources: Cloud_Machine_1: type: Cloud.Machine properties: image: ubuntu flavor: micro count: '${input.integerVar}'
Sie können die Dollarzeichenvariablen ($) für image
und flavor
verwenden. Beispiel:
resources: Cloud_Machine_1: type: Cloud.Machine properties: input: '${input.image}' flavor: '${input.flavor}'
Zum Verwenden einer Cloud-Vorlage in einer Code Stream-Pipeline und Hinzufügen von Dollarbindungen gehen Sie nach diesen Schritten vor.
- Klicken Sie in Code Stream auf .
- Fügen Sie der Pipeline eine Aufgabe vom Typ Cloud-Vorlage hinzu.
- Wählen Sie in der Cloud-Vorlagenaufgabe für Quelle der Cloud-Vorlage die Option Cloud Assembly-Cloud-Vorlagen aus, geben Sie den Namen der Cloud-Vorlage ein und wählen Sie die Version der Cloud-Vorlage aus.
- Beachten Sie, dass Sie ein API-Token eingeben können, das Anmeldedaten für die Pipeline liefert. Um eine Variable zu erstellen, die das API-Token in der Cloud-Vorlagenaufgabe verschlüsselt, klicken Sie auf Variable erstellen.
- Beachten Sie in der angezeigten Tabelle Parameter und Wert die Parameterwerte. Der Standardwert für flavor ist small und der Standardwert für image ist ubuntu.
- Angenommen, Sie müssen die Cloud-Vorlage in Cloud Assembly ändern. Beispiel:
- Legen Sie den flavor so fest, dass er eine Eigenschaft vom Typ array verwendet. Cloud Assembly lässt kommagetrennte Werte für flavor zu, wenn array als Typ verwendet wird.
- Klicken Sie auf Bereitstellen.
- Geben Sie auf der Seite „Bereitstellungstyp“ einen Namen für die Bereitstellung ein und wählen Sie die Version der Cloud-Vorlage aus.
- Auf der Seite „Bereitstellungseingaben“ können Sie einen oder mehrere Werte für Typ definieren.
- Beachten Sie, dass die Bereitstellungseingaben alle im Code der Cloud-Vorlage definierten Variablen enthalten und im Code der Cloud-Vorlage definitionsgemäß angezeigt werden. Beispiel:
Integer Var
,String Var
,Flavor Var
,Boolean Var
,Object Var
undArray Var
.String Var
undFlavor Var
sind Zeichenfolgenwerte.Boolean Var
ist ein Kontrollkästchen. - Klicken Sie auf Bereitstellen.
- Wählen Sie in Code Stream die neue Version der Cloud-Vorlage aus und geben Sie Werte in der Tabelle Parameter und Werte ein. Cloud-Vorlagen unterstützen die folgenden Parametertypen, die Code Stream-Bindungen mithilfe von Dollarzeichenvariablen aktivieren. Es bestehen geringfügige Unterschiede zwischen der Benutzeroberfläche der Code Stream-Cloud-Vorlagenaufgabe und der Benutzeroberfläche der Cloud Assembly-Cloud-Vorlage. Je nach Codierung einer Cloud-Vorlage in Cloud Assembly ist die Eingabe von Werten in der Cloud-Vorlagenaufgabe in Code Stream nicht zulässig.
- Wenn in der Cloud-Vorlage der Typ als Zeichenfolge oder Array für flavorVar definiert wurde, geben Sie eine Zeichenfolge oder ein kommagetrenntes Wert-Array ein. Ein Beispiel-Array ähnelt test, test.
- Wählen Sie für BooleanVar im Dropdown-Menü die Option true oder false aus. Geben Sie alternativ zur Verwendung einer Variablenbindung den Wert $ ein und wählen Sie eine Variablenbindung aus der Liste aus.
- Geben Sie für objectVar den Wert in geschweiften Klammern und Anführungszeichen in folgendem Format ein: {"bkix":"bkix":}.
- Der Wert objectVar wird an die Cloud-Vorlage übergeben und kann je nach Cloud-Vorlage auf verschiedene Arten verwendet werden. Dieser Wert ermöglicht ein Zeichenfolgenformat für ein JSON-Objekt, und Sie können Schlüssel-Wert-Paare in der Schlüssel-Wert-Tabelle als kommagetrennte Werte hinzufügen. Sie können Klartext für ein JSON-Objekt oder ein Schlüssel-Wert-Paar als normales Zeichenfolgenformat für JSON eingeben.
- Geben Sie für arrayVar den kommagetrennten Eingabewert als Array in folgendem Format ein: ["1","2"].
- In der Pipeline können Sie einen Eingabeparameter an ein Array binden.
- Klicken Sie auf die Registerkarte Eingabe.
- Geben Sie einen Namen für die Eingabe ein. Beispielsweise arrayInput.
- Klicken Sie in der Tabelle Parameter und Wert auf arrayVar und geben Sie ${input.arrayInput} ein.
- Nachdem Sie die Pipeline gespeichert und aktiviert haben, müssen Sie bei Ausführung der Pipeline einen Eingabewert für das Array angeben. Geben Sie z. B. ["1","2"] ein und klicken Sie auf Ausführen.
Jetzt haben Sie sich in einer Cloud-Vorlagenaufgabe der Code Stream-Pipeline mit der Verwendung von $-Variablenbindungen in einer Cloud-Vorlage vertraut gemacht.
Vorgehensweise zum Übergeben eines Parameters an eine Pipeline, während diese ausgeführt wird
Sie können der Pipeline Eingabeparameter hinzufügen, damit sie von Code Stream an die Pipeline übergeben werden. Wenn die Pipeline dann ausgeführt wird, muss ein Benutzer den Wert für den Eingabeparameter eingeben. Wenn Sie Ausgabeparameter zur Pipeline hinzufügen, können die Pipeline-Aufgaben den Ausgabewert aus einer Aufgabe verwenden. Code Stream bietet vielfältige Unterstützung für die Verwendung von Parametern, die sich nach Ihren Anforderungen an Pipelines richtet.
Wenn Sie einen Benutzer während der Ausführung einer Pipeline mit einer REST-Aufgabe zur Eingabe der URL des Git-Servers auffordern, können Sie die REST-Aufgabe an eine Git-Server-URL binden.
Zum Erstellen der Variablenbindung fügen Sie der REST-Aufgabe eine URL-Bindungsvariable hinzu. Wenn die Pipeline ausgeführt wird und die REST-Aufgabe erreicht, muss ein Benutzer die URL des Git-Servers eingeben. So erstellen Sie die Bindung:
- Klicken Sie in Ihrer Pipeline auf die Registerkarte Eingabe.
- Klicken Sie zum Einrichten des Parameters für Parameter automatisch einfügen auf Git.
Die Liste der Git-Parameter wird angezeigt und enthält GIT_SERVER_URL. Wenn Sie einen Standardwert für die Git-Server-URL verwenden müssen, bearbeiten Sie diesen Parameter.
- Klicken Sie auf Modell und dann auf die REST-Aufgabe.
- Geben Sie auf der Registerkarte Aufgabe im Bereich URL den Wert $ ein und wählen Sie dann Eingabe und GIT_SERVER_URL aus.
Der Eintrag ähnelt folgendem Eintrag: ${input.GIT_SERVER_URL}
- Um die Integrität der Variablenbindung für die Aufgabe zu überprüfen, klicken Sie auf Aufgabe validieren.
Code Stream gibt an, dass die Aufgabe erfolgreich validiert wurde.
- Wenn die REST-Aufgabe von der Pipeline ausgeführt wird, muss ein Benutzer die URL des Git-Servers eingeben. Andernfalls wird die Aufgabe immer weiter ausgeführt.
Vorgehensweise zum Binden zweier Pipeline-Aufgaben durch Erstellen von Eingabe- und Ausgabeparametern
Beim Binden von Aufgaben fügen Sie der Eingabekonfiguration der empfangenden Aufgabe eine Bindungsvariable hinzu. Bei der Ausführung der Pipeline ersetzt ein Benutzer die Bindungsvariable dann durch die erforderliche Eingabe.
Um Pipeline-Aufgaben miteinander zu verbinden, verwenden Sie die Dollarzeichen-Variable ($) in den Eingabe- und Ausgabeparametern. Die entsprechende Vorgehensweise finden Sie in diesem Beispiel.
Angenommen, Sie benötigen Ihre Pipeline zum Aufrufen einer URL in einer REST-Aufgabe und Ausgeben einer Antwort. Zum Aufrufen der URL und zur Ausgabe der Antwort fügen Sie sowohl Eingabe- als auch Ausgabeparameter in Ihre REST-Aufgabe ein. Weiterhin benötigen Sie einen Benutzer, der die Aufgabe genehmigen kann, und schließen eine Aufgabe vom Typ „Benutzervorgänge“ für einen anderen Benutzer ein, der die Aufgabe während der Ausführung der Pipeline genehmigen kann. Dieses Beispiel zeigt, wie Sie Ausdrücke in den Eingabe- und Ausgabeparametern verwenden und die Pipeline dazu veranlassen, auf die Genehmigung der Aufgabe zu warten.
- Klicken Sie in Ihrer Pipeline auf die Registerkarte Eingabe.
- Belassen Sie die Einstellung Parameter automatisch einfügen bei Keine.
- Klicken Sie auf Hinzufügen und geben Sie den Parameternamen, den Wert und die Beschreibung ein. Klicken Sie anschließend auf OK. Beispiel:
- Geben Sie einen URL-Namen ein.
- Geben Sie den Wert ein:
{Stage0.Task3.input.http://www.docs.vmware.com}
- Geben Sie eine Beschreibung ein.
- Klicken Sie auf die Registerkarte Ausgabe und dann auf Hinzufügen. Geben Sie anschließend den Namen und die Zuordnung des Ausgabeparameters ein.
- Geben Sie einen eindeutigen Namen für den Ausgabeparameter ein.
- Klicken Sie auf den Bereich Referenz und geben Sie
$
ein. - Geben Sie die Ausgabezuordnung der Aufgabe ein, indem Sie die verfügbaren Optionen auswählen. Wählen Sie Stage0, Task3, output und responseCode aus. Klicken Sie dann auf OK.
- Speichern Sie die Pipeline.
- Klicken Sie im Menü Aktionen auf Ausführen.
- Klicken Sie auf .
- Klicken Sie auf die Pipeline-Ausführung und untersuchen Sie die von Ihnen definierten Eingabe- und Ausgabeparameter.
- Klicken Sie zur Genehmigung der Pipeline auf Benutzervorgänge und zeigen Sie die Liste der Genehmigungen auf der Registerkarte Aktive Elemente an. Oder bleiben Sie unter „Ausführungen“ und klicken Sie auf die Aufgabe und dann auf Genehmigen.
- Zum Aktivieren der Schaltflächen Genehmigen und Ablehnen klicken Sie auf das Kontrollkästchen neben der Ausführung.
- Erweitern Sie zur Anzeige der Details das Dropdown-Menü.
- Klicken Sie zum Genehmigen der Aufgabe auf GENEHMIGEN, geben Sie einen Grund ein und klicken Sie auf OK.
- Klicken Sie auf Ausführungen und verfolgen Sie die weitere Ausführung der Pipeline.
- Beheben Sie bei einem Ausfall der Pipeline alle Fehler, speichern Sie die Pipeline und führen Sie sie erneut aus.
Vorgehensweise zum Abrufen von Informationen zu Variablen und Ausdrücken
Weitere Informationen zur Verwendung von Variablen und Ausdrücken beim Binden von Pipeline-Aufgaben finden Sie unter Welche Variablen und Ausdrücke kann ich beim Binden von Pipelineaufgaben in Code Stream verwenden?.
Weitere Informationen zur Verwendung der Ausgabe einer Pipeline-Aufgabe mit einer Variablenbindung für Bedingungen finden Sie unter Vorgehensweise zum Verwenden von Variablenbindungen in einer Bedingungsaufgabe zum Ausführen oder Anhalten einer Pipeline in Code Stream.