Het binden van een pijplijntaak houdt in dat u een afhankelijkheid voor de taak maakt wanneer de pijplijn wordt uitgevoerd. U kunt op verschillende manieren een binding voor een pijplijntaak maken. U kunt een taak binden aan een andere taak, deze binden aan een variabele en expressie, of deze binden aan een voorwaarde.

Dollarbindingen toepassen op cloudsjabloonvariabelen in een cloudsjabloontaak

U kunt dollarbindingen toepassen op cloudsjabloonvariabelen in een cloudsjabloontaak in een Code Stream-pijplijn. De manier waarop u de variabelen in Code Stream wijzigt, is afhankelijk van de codering van de eigenschappen van de variabele in de cloudsjabloon.

Als u dollarbindingen in een cloudsjabloontaak moet gebruiken, maar de huidige versie van de cloudsjabloon die u gebruikt in de cloudsjabloontaak dit niet toestaat, kunt u de cloudsjabloon in Cloud Assembly wijzigen en een nieuwe versie implementeren. Vervolgens gebruikt u de nieuwe cloudsjabloonversie in uw cloudsjabloontaak en voegt u de dollarbindingen waar nodig toe.

Om dollarbindingen toe te passen op de typen eigenschappen die de Cloud Assembly-cloudsjabloon biedt, moet u over de juiste rechten beschikken.

  • U moet dezelfde rol hebben als de persoon die de cloudsjabloonimplementatie heeft gemaakt in Cloud Assembly.
  • De persoon die de pijplijn modelleert en de persoon die de pijplijn uitvoert, kunnen twee verschillende gebruikers zijn en kunnen verschillende rollen hebben.
  • Als een ontwikkelaar de Code Stream-uitvoerderfunctie heeft en de pijplijn modelleert, moet de ontwikkelaar ook dezelfde Cloud Assembly-rol hebben als de persoon die de cloudsjabloon heeft geïmplementeerd. De vereiste rol kan bijvoorbeeld Cloud Assembly-beheerder zijn.
  • Alleen de persoon die de pijplijn modelleert, kan de pijplijn maken en de implementatie maken omdat hij of zij rechten heeft.

Zo gebruikt u een API-token in de cloudsjabloontaak:

  • De persoon die de pijplijn modelleert, kan een API-token geven aan een andere gebruiker die de rol van Code Stream-uitvoerder heeft. Wanneer de uitvoerder de pijplijn uitvoert, gebruikt deze het API-token en de verificatiegegevens die het API-token maakt.
  • Wanneer een gebruiker het API-token in de cloudsjabloontaak invoert, worden de verificatiegegevens gemaakt die nodig zijn voor de pijplijn.
  • Als u de API-tokenwaarde wilt versleutelen, klikt u op Variabele maken.
  • Als u geen variabele voor het API-token maakt en deze in de cloudsjabloontaak gebruikt, wordt de waarde van het API-token weergegeven als tekst zonder opmaak.

Volg de volgende stappen als u dollarbindingen wilt toepassen op cloudsjabloonvariabelen in een cloudsjabloontaak.

U begint met een cloudsjabloon waarop invoervariabele-eigenschappen zijn gedefinieerd, zoals integerVar, stringVar, flavorVar, BooleanVar, objectVar, en arrayVar. U kunt de image-eigenschappen vinden die in de sectie resources zijn gedefinieerd. De eigenschappen in de cloudsjablooncode kunnen er als volgt uitzien:

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}'

U kunt dollartekenvariabelen ($) gebruiken voor image en flavor. Bijvoorbeeld:

resources:
  Cloud_Machine_1:
    type: Cloud.Machine
    properties:
      input: '${input.image}'
      flavor: '${input.flavor}'

Als u een cloudsjabloon wilt gebruiken in een Code Stream-pijplijn en hieraan dollarbindingen wilt toevoegen, volgt u deze stappen.

  1. Klik in Code Stream op Pijplijnen > Blanco canvas.
  2. Voeg een taak Cloudsjabloon toe aan de pijplijn.
  3. In de taak Cloudsjabloon selecteert u Cloud Assembly Cloud Templates voor Bron van cloudsjabloon, voert u de naam van de cloudsjabloon in en selecteert u de versie van de cloudsjabloon.
  4. Merk op dat u een API-token kunt invoeren, dat verificatiegegevens voor de pijplijn biedt. Als u een variabele wilt maken die het API-token in de taak van de cloudsjabloon versleutelt, klikt u op Variabele maken.
  5. In de tabel Parameter en waarde die wordt weergegeven, ziet u de parameterwaarden. De standaardwaarde voor soort is klein en de standaardwaarde voor image is ubuntu.
  6. Stel dat u de cloudsjabloon in Cloud Assembly moet wijzigen. U kunt bijvoorbeeld het volgende doen:
    1. Stel de soort in zodat deze een eigenschap van het type array gebruikt. Cloud Assembly staat door komma's gescheiden waarden toe voor Soort wanneer het type array is.
    2. Klik op Implementeren.
    3. Voer op de pagina Implementatietype een implementatienaam in en selecteer de versie van de cloudsjabloon.
    4. Op de pagina Implementatie-invoeren kunt u een of meerdere waarden definiëren voor Soort.
    5. U ziet dat de Implementatie-inputs alle variabelen bevatten die zijn gedefinieerd in uw cloudsjablooncode en die worden weergegeven zoals gedefinieerd in de cloudsjablooncode. Bijvoorbeeld: Integer Var, String Var, Flavor Var, Boolean Var, Object Var en Array Var. String Var en Flavor Var zijn tekenreekswaarden en Boolean Var is een selectievakje.
    6. Klik op Implementeren.
  7. Selecteer in Code Stream de nieuwe versie van de cloudsjabloon en voer waarden in de tabel Parameter en waarde in. Cloudsjablonen ondersteunen de volgende typen parameters, die Code Stream-bindingen met behulp van dollartekenvariabelen inschakelen. Er zijn kleine verschillen tussen de gebruikersinterface van de Code Stream-cloudsjabloontaak en de gebruikersinterface van de Cloud Assembly-cloudsjabloon. Afhankelijk van de codering van een cloudsjabloon in Cloud Assembly is het mogelijk niet toegestaan om waarden in de cloudsjabloontaak in Code Stream in te voeren.
    1. Voor flavorVar: als de cloudsjabloon het type als tekenreeks of array heeft gedefinieerd, voert u een tekenreeks of een array met door komma's gescheiden waarden in. Een voorbeeld-array lijkt op test, test.
    2. Voor BooleanVar selecteert u true of false in het vervolgkeuzemenu. Of als u een variabelebinding wilt gebruiken, voert u $ in en selecteert u een variabelebinding in de lijst.Wanneer u de bindingsvariabele toevoegt door het dollarteken in het tekstgebied BooleanVar in te voeren, worden de beschikbare Booleaanse variabelen weergegeven voor selectie.
    3. Voer voor objectVar de waarde tussen accolades en aanhalingstekens in deze indeling in: {"bkix":"bkix":}.
    4. De objectVar wordt doorgestuurd naar de cloudsjabloon en kan op verschillende manieren worden gebruikt, afhankelijk van de cloudsjabloon. Hiermee kunt u een tekenreeksindeling voor een JSON-object maken en u kunt sleutelwaardeparen als door komma's gescheiden waarden toevoegen in de tabel met sleutelwaarden. U kunt tekst zonder opmaak invoeren voor een JSON-object of een sleutelwaardepaar als een normale tekenreeksindeling voor JSON.
    5. Voor arrayVar voert u de door komma's gescheiden invoerwaarde in als een array met de volgende indeling: ["1","2"].
  8. In de pijplijn kunt u een invoerparameter binden aan een array.
    1. Klik op het tabblad Invoer.
    2. Voer een naam in voor de invoer. Bijvoorbeeld arrayInput.
    3. In de tabel Parameter en waarde klikt u op arrayVar en voert u ${input.arrayInput} in.
    4. Nadat u de pijplijn heeft opgeslagen en ingeschakeld, moet u een waarde invoeren voor de array-invoer wanneer de pijplijn wordt uitgevoerd. Voer bijvoorbeeld ["1","2"] in en klik op Uitvoeren.

Nu heeft u geleerd hoe u variabelebindingen met het dollarteken ($) kunt gebruiken in een cloudsjabloon in een cloudsjabloontaak van een Code Stream-pijplijn.

Een parameter doorgeven aan een pijplijn wanneer deze wordt uitgevoerd

U kunt invoerparameters aan uw pijplijn toevoegen zodat Code Stream deze doorgeeft aan de pijplijn. Wanneer de pijplijn wordt uitgevoerd, moet een gebruiker de waarde invoeren voor de invoerparameter. Wanneer u uitvoerparameters aan uw pijplijn toevoegt, kunnen de pijplijntaken de uitvoerwaarde van een taak gebruiken. Code Stream ondersteunt het gebruik van parameters op veel manieren die uw eigen pijplijnbehoeften ondersteunen.

Als u bijvoorbeeld een gebruiker wilt vragen naar de URL naar zijn Git-server wanneer een pijplijn met een REST-taak wordt uitgevoerd, kunt u de REST-taak binden aan een Git-server-URL.

Als u de variabelebinding wilt maken, voegt u een URL-bindingsvariabele toe aan de REST-taak. Wanneer de pijplijn wordt uitgevoerd en de REST-taak is bereikt, moet een gebruiker de URL voor de Git-server invoeren. U kunt als volgt de binding maken:

  1. Klik op het tabblad Invoer in uw pijplijn.
  2. Om de parameter in te stellen voor Parameters automatisch injecteren klikt u op Git.

    De lijst met Git-parameters wordt weergegeven en bevat GIT_SERVER_URL. Als u een standaardwaarde voor de URL van de Git-server moet gebruiken, kunt u deze parameter bewerken.

  3. Klik op Model en klik op uw REST-taak.
  4. Voer op het tabblad Taak in het gebied URL $ in en selecteer vervolgens invoer en GIT_SERVER_URL.

    Wanneer u de bindingsvariabele toevoegt door het dollarteken in het tekstgebied URL in te voeren, en invoer selecteert, worden de beschikbare Git-invoerparameters weergegeven voor selectie.

    De vermelding ziet er ongeveer zo uit: ${input.GIT_SERVER_URL}

  5. Om de integriteit van de binding van variabelen voor de taak te controleren, klikt u op Taak valideren.

    Code Stream geeft aan dat de taak met succes is gevalideerd.

  6. Wanneer de pijplijn de REST-taak uitvoert, moet een gebruiker de URL voor de Git-server invoeren. Anders wordt de taak niet voltooid.

Twee pijplijntaken binden door invoer- en uitvoerparameters te maken

Als u twee taken aan elkaar wilt binden, voegt u een bindingsvariabele toe aan de invoerconfiguratie van de ontvangende taak. Wanneer de pijplijn wordt uitgevoerd, vervangt een gebruiker de bindingsvariabele door de vereiste input.

Als u pijplijntaken samen wilt binden, gebruikt u de dollartekenvariabele ($) in de invoerparameters en uitvoerparameters. In dit voorbeeld ziet u hoe u.

Stel dat u wilt dat uw pijplijn een URL in een REST-taak oproept en een antwoord uitvoert. Om de URL aan te roepen en het antwoord uit te voeren, neemt u zowel de invoerparameters als de uitvoerparameters op in uw REST-taak. U moet ook een gebruiker hebben die de taak kan goedkeuren, en een taak Gebruikersbewerkingen opnemen voor een andere gebruiker die deze kan goedkeuren wanneer de pijplijn wordt uitgevoerd. Dit voorbeeld toont hoe u expressies kunt gebruiken in de invoer- en uitvoerparameters en de pijplijn kunt laten wachten op goedkeuring van de taak.

  1. Klik op het tabblad Invoer in uw pijplijn.

    Het tabblad Invoer in de pijplijn bevat selecties voor Gerrit-, Git- en Docker-invoerparameters en geeft de beschikbare parameters voor elke selectie weer.

  2. Laat de Automatisch parameters injecteren op Geen.
  3. Klik op Toevoegen en voer de naam, waarde en beschrijving van de parameter in en klik op OK. Bijvoorbeeld:
    1. Voer een URL-naam in.
    2. Voer de waarde in: {Stage0.Task3.input.http://www.docs.vmware.com}
    3. Voer een beschrijving in.
  4. Klik op het tabblad Uitvoer, klik op Toevoegen en voer de naam van de uitvoerparameter en de toewijzing in.

    Op het tabblad Uitvoer van de pijplijn kunt u een uitvoerparameter toevoegen en een REST-responsparameter selecteren in de lijst die wordt weergegeven.

    1. Voer een unieke naam voor de uitvoerparameter in.
    2. Klik in het gebied Referentie en voer $ in.
    3. Voer de toewijzing van de taakuitvoer in door de opties te selecteren wanneer ze verschijnen. Selecteer de fase Stage0, selecteer de taak Task3, select uitvoer en selecteer responseCode. Klik vervolgens op OK.

      Nadat u een uitvoerparameter hebt toegevoegd, wordt op het tabblad Uitvoer de naam weergegeven van de parameter die u hebt toegevoegd en de verwijzing ervan in de pijplijnfase en -taak.

  5. Sla uw pijplijn op.
  6. Klik in het menu Acties op Uitvoeren.
  7. Klik op Acties > Uitvoeringen bekijken.
  8. Klik op de pijplijnuitvoering en bekijk de invoerparameters en uitvoerparameters die u hebt gedefinieerd.

    De pijplijnuitvoering geeft de URL-invoerparameter weer met de URL die u hebt ingevoerd en de uitvoerparameter Antwoord met de antwoordcode die u hebt geselecteerd.

  9. Als u de pijplijn wilt goedkeuren, klikt u op Gebruikersbewerkingen en bekijkt u de lijst met goedkeuringen op het tabblad Actieve items. Of blijf in Uitvoeringen, klik op de taak en klik vervolgens op Goedkeuren.
  10. Als u de knoppen Goedkeuren en Afwijzen wilt inschakelen, klikt u op het selectievakje naast de uitvoering.
  11. Vouw de vervolgkeuzepijl uit om de details weer te geven.
  12. Als u de taak wilt goedkeuren, klikt u op GOEDKEUREN, voert u een reden in en klikt u op OK.

    Gegevens over de gebruikersbewerking tonen wie de goedkeuring heeft aangevraagd, en wanneer, de vereiste goedkeurders, en wanneer de goedkeuring verloopt.

  13. Klik op Uitvoeringen en kijk hoe de pijplijn verder wordt uitgevoerd.

    Na het goedkeuren van de gebruikersbewerking wordt de pijplijn voortgezet en heeft de pijplijnuitvoering de status Wordt uitgevoerd.

  14. Als de pijplijn mislukt, corrigeert u eventuele fouten, slaat u de pijplijn op en voert u deze opnieuw uit.

    Wanneer de pijplijn is voltooid, heeft de pijplijnuitvoering de status VOLTOOID.

Hoe kan ik meer informatie vinden over variabelen en expressies?

Zie Welke variabelen en expressies kan ik gebruiken bij het binden van pijplijntaken in Code Stream? voor meer informatie over het gebruik van variabelen en expressies wanneer u pijplijntaken bindt.

Zie Hoe gebruik ik variabelebindingen in een voorwaardetaak om een pijplijn uit te voeren of te stoppen in Code Stream? voor meer informatie over het gebruik van de pijplijntaakuitvoer met een binding van een voorwaardevariabele.