Code Stream kan integreren met vRealize Orchestrator (vRO) om de capaciteit ervan uit te breiden door vRO-werkstromen uit te voeren. vRealize Orchestrator bevat een groot aantal vooraf gedefinieerde werkstromen die kunnen integreren met tools van derden. Met deze werkstromen kunt u uw DevOps-processen automatiseren en beheren, bulkbewerkingen automatiseren en nog veel meer.

U kunt bijvoorbeeld een werkstroom in een vRO-taak in uw pijplijn gebruiken om een gebruiker in te schakelen, een gebruiker te verwijderen, VM's te verplaatsen, te integreren met testframeworks om uw code te testen terwijl de pijplijn wordt uitgevoerd en nog veel meer. U kunt bladeren in voorbeelden van code voor vRealize Orchestrator-werkstromen in code.vmware.com.

Met een vRealize Orchestrator-werkstroom kan uw pijplijn een actie uitvoeren tijdens het bouwen, testen en implementeren van uw applicatie. U kunt vooraf gedefinieerde werkstromen in uw pijplijn opnemen of u kunt custom werkstromen maken en gebruiken. Elke werkstroom bevat input, taken en output.

Om een vRO-werkstroom in uw pijplijn uit te voeren, moet de werkstroom worden weergegeven in de lijst met beschikbare werkstromen in de vRO-taak die u in uw pijplijn heeft opgenomen.

Voordat de werkstroom kan worden weergegeven in de vRO-taak in uw pijplijn, moet een beheerder de volgende stappen uitvoeren in vRealize Orchestrator:

  1. Pas de tag CODESTREAM toe op de vRO-werkstroom.
  2. Markeer de vRO-werkstroom als algemeen.

Voorwaarden

  • Controleer of u toegang als beheerder heeft tot een vRealize Orchestrator-instantie op locatie. Raadpleeg uw eigen beheerder en de vRealize Orchestrator-documentatie voor hulp.
  • Controleer of u lid bent van een project in Code Stream. Als u geen beheerder bent, vraagt u de Code Stream-beheerder om u als lid toe te voegen aan een project. Zie Hoe voeg ik een project toe in Code Stream?.
  • Maak in Code Stream een pijplijn en voeg een fase toe.

Procedure

  1. Bereid als beheerder een vRealize Orchestrator-werkstroom voor om uw pijplijn te laten uitvoeren.
    1. Zoek in vRealize Orchestrator de werkstroom die u nodig heeft om in uw pijplijn te gebruiken, zoals een werkstroom om een gebruiker in te schakelen.
      Als u een werkstroom nodig heeft die niet bestaat, kunt u deze maken.
    2. Voer in de zoekbalk Label werkstroom in om de werkstroom met de naam Label werkstroom te vinden.
    3. Klik op de kaart met de naam Label werkstroom op Uitvoeren, waarmee het configuratiegebied wordt weergegeven.
    4. Voer in het tekstgebied Gelabelde werkstroom de naam van de werkstroom in die u wilt gebruiken in uw Code Stream-pijplijn en selecteer deze in de lijst.
    5. In de Label- en Waarde-tekstgebieden voert u CODESTREAM met hoofdletters in.
    6. Klik op het selectievakje met de naam Globale label.
    7. Klik op Uitvoeren, waarmee het label CODESTREAM wordt gekoppeld aan de werkstroom die u moet selecteren in uw Code Stream-pijplijn.
    8. Klik in het navigatiedeelvenster op Werkstromen en controleer of het label met de naam CODESTREAM wordt weergegeven op de werkstroomkaart die uw pijplijn zal uitvoeren.
      Nadat u bent aangemeld bij Code Stream en een vRO-taak aan uw pijplijn toevoegt, wordt de gelabelde werkstroom weergegeven in de werkstroomlijst.
  2. Maak in Code Stream een eindpunt voor uw vRealize Orchestrator-instantie.
    1. Klik op Eindpunten > Nieuw eindpunt.
    2. Selecteer een project.
    3. Voer een relevante naam in.
    4. Voer de URL van het vRealize Orchestrator-eindpunt in.
      Gebruik de indeling: https://vro-appliance.yourdomain.local:8281
      Gebruik niet de volgende indeling: https://vro-appliance.yourdomain.local:8281/vco/api
      De URL voor een vRealize Orchestrator-instantie die wordt ingesloten in de vRealize Automation-appliance, is de FQDN voor de appliance zonder poort. Bijvoorbeeld: https://vra-appliance.yourdomain.local/vco
      Voor externe vRealize Orchestrator-appliances die wordt gestart met vRealize Automation 8.x, is https://vro-appliance.yourdomain.local de FQDN voor de appliance.
      Voor externe vRealize Orchestrator-appliances die deel uitmaken van vRealize Automation 7.x, is https://vro-appliance.yourdomain.local:8281/vco de FQDN voor de appliance
      Als er een probleem optreedt wanneer u het eindpunt toevoegt, moet u mogelijk een YAML-configuratie importeren met een SHA-256-certificaatvingerafdruk waarbij de dubbelepunten zijn verwijderd. Bijvoorbeeld: B0:01:A2:72... wordt B001A272... Het voorbeeld van de YAML-code ziet er zo uit:
      ```
      ---
      project: Demo
      kind: ENDPOINT
      name: external-vro
      description: ''
      type: vro
      properties:
        url: https://yourVROhost.yourdomain.local
        username: yourusername
        password: yourpassword
        fingerprint: <your_fingerprint>
      ```
    5. Klik op Certificaat accepteren als de URL die u heeft ingevoerd een certificaat nodig heeft.
    6. Als het vRealize Orchestrator-eindpunt versie 8.0 t/m 8.7 is, kunt u Basisverificatie of Token selecteren als verificatietype. Als het vRealize Orchestrator-eindpunt versie 8.8 of hoger is, moet u Token selecteren als verificatietype.
      Opmerking: Als het vRealize Orchestrator-eindpunt versie 8.8 of hoger is, selecteert u niet Basisverificatie. Basisverificatie wordt niet ondersteund en het maken van eindpunten mislukt.
      • Als u Basisverificatie selecteert, voert u de gebruikersnaam en het wachtwoord voor de vRealize Orchestrator-server in.

        Als u een niet-lokale gebruiker voor verificatie gebruikt, moet u het domeingedeelte van de gebruikersnaam weglaten. Als u bijvoorbeeld wilt verifiëren met [email protected], moet u svc_vro invoeren in het tekstgebied Username.

      • Als u Token selecteert als verificatietype, genereert u het privétoken.
        Het VMware Cloud Services API-token verifieert u voor externe API-verbindingen met Code Stream. Om het API-token te verkrijgen:
        1. Klik op Token genereren.
        2. Voer het e-mailadres in dat is gekoppeld aan uw gebruikersnaam en wachtwoord en klik op Genereren.
          Het token dat u genereert, is zes maanden geldig. Het wordt ook wel een vernieuwingstoken genoemd.
          • Als u het token als een variabele wilt behouden voor toekomstig gebruik klikt u op Variabele maken, voert u een naam voor de variabele in en klikt u op Opslaan.
          • Als u het token als tekstwaarde wilt behouden voor toekomstig gebruik klikt u op Kopiëren en plakt u het token in een tekstbestand om lokaal op te slaan.
          U kunt ervoor kiezen om beide een variabele te maken en het token in een tekstbestand op te slaan voor toekomstig gebruik.
        3. Klik op Sluiten.
  3. Bereid uw pijplijn voor om de vRO-taak uit te voeren.
    1. Voeg een vRO-taak toe aan uw pijplijnfase.
    2. Voer een relevante naam in.
    3. Selecteer in het Werkstroomproperties-gebied het vRealize Orchestrator-eindpunt.
    4. Selecteer de werkstroom die u heeft gelabeld als CODESTREAM in vRealize Orchestrator.
      Als u een custom werkstroom selecteert die u heeft gemaakt, moet u mogelijk de waarden voor de inputparameters invoeren.
    5. Klik op Op voorwaarde voor Taak uitvoeren.
      Als u voorwaarden voor de vRealize Orchestrator-taak moet toepassen, voert u ze in het gebied Voorwaarde in.
    6. Voer de voorwaarden in die van toepassing zijn wanneer de pijplijn wordt uitgevoerd.
      Wanneer de pijplijn moet worden uitgevoerd… Selecteer voorwaarden…
      Op voorwaarde

      De pijplijntaak wordt alleen uitgevoerd als de gedefinieerde voorwaarde als waar wordt geëvalueerd. Als de voorwaarde onwaar is, wordt de taak overgeslagen.

      Met de vRO-taak kunt u een Boole-expressie opnemen, die de volgende operanden en operatoren gebruikt.

      • Pijplijnvariabelen zoals ${pipeline.variableName}. Gebruik alleen gekrulde haakjes wanneer u variabelen invoert.
      • Outputvariabelen voor taken zoals ${Stage1.task1.machines[0].value.hostIp[0]}.
      • Standaard bindingsvariabelen voor pijplijnen zoals ${releasePipelineName}.
      • Niet-hoofdlettergevoelige Boole-waarden zoals, true, false, 'true', 'false'.
      • Gehele of decimale waarden zonder aanhalingstekens.
      • Tekenreekswaarden die worden gebruikt met enkele of dubbele aanhalingstekens, zoals "test", 'test'.
      • Tekenreeks- en numerieke waarden zoals == Equals en != Not Equals.
      • Relationele operatoren zoals >, >=, < en <=.
      • Boole-logica zoals && en ||.
      • Rekenkundige operatoren zoals +, -, * en /.
      • Geneste expressies met ronde haakjes.
      • Tekenreeksen die de letterlijke waarde ABCD bevatten, worden als onwaar geëvalueerd en de taak wordt overgeslagen.
      • Unaire operatoren worden niet ondersteund.

      Een voorbeeld van een voorwaarde is ${Stage1.task1.output} == “Passed” || ${pipeline.variableName} == 39

      Altijd Als u Altijd selecteert, voert de pijplijn de taak uit zonder voorwaarden.
    7. Voer een bericht in voor de begroeting.
    8. Klik op Taak valideren en corrigeer eventuele fouten.
  4. Sla uw pijplijn op, schakel deze in en voer deze uit.
  5. Bekijk de resultaten nadat de pijplijn is uitgevoerd.
    1. Klik op Uitvoeringen.
    2. Klik op de pijplijn.
    3. Klik op de taak.
    4. Bekijk de resultaten, de inputwaarde en de properties.
      U kunt de uitvoerings-ID van de werkstroom, de persoon die heeft gereageerd op de taak, wanneer de persoon heeft gereageerd en alle opmerkingen die deze persoon heeft opgenomen, identificeren.

resultaten

Gefeliciteerd! U heeft een vRealize Orchestrator-werkstroom gelabeld voor gebruik in Code Stream en u heeft een vRO-taak toegevoegd aan uw Code Stream-pijplijn zodat deze een werkstroom uitvoert die een actie in uw DevOps-omgeving automatiseert.

Voorbeeld: Outputindeling voor vRO-taak

De outputindeling voor een vRO-taak lijkt op dit voorbeeld.

[{
                "name": "result",
                "type": "STRING",
                "description": "Result of workflow run.",
                "value": ""
},
{
                "name": "message",
                "type": "STRING",
                "description": "Message",
                "value": ""
}]

Volgende stappen

Ga door met het toevoegen van vRO-werkstroomtaken in uw pijplijnen zodat u taken kunt automatiseren in uw ontwikkelings-, test- en productieomgevingen.