Code Stream peut s'intégrer à vRealize Orchestrator (vRO) pour étendre sa capacité en exécutant des workflows vRO. vRealize Orchestrator inclut de nombreux workflows prédéfinis qui peuvent s'intégrer à des outils tiers. Ces workflows permettent d'automatiser et de gérer vos processus DevOps, d'automatiser des opérations en bloc, etc.

Par exemple, vous pouvez utiliser un workflow dans une tâche vRO de votre pipeline pour activer un utilisateur, supprimer un utilisateur, déplacer des machines virtuelles, procéder à une intégration à des structures de test pour tester votre code au fur et à mesure de l'exécution du pipeline, et bien plus encore. Vous pouvez parcourir des exemples de code pour les workflows vRealize Orchestrator dans code.vmware. com.

Avec un workflow vRealize Orchestrator, votre pipeline peut exécuter une action au fur et à mesure qu'il génère, teste et déploie votre application. Vous pouvez inclure des workflows prédéfinis dans votre pipeline, ou créer et utiliser des workflows personnalisés. Chaque workflow inclut des entrées, des tâches et des sorties.

Pour exécuter un workflow vRO dans votre pipeline, le workflow doit figurer dans la liste des workflows disponibles dans la tâche vRO que vous incluez dans votre pipeline.

Pour que le workflow ne puisse figurer dans la tâche vRO de votre pipeline, un administrateur doit effectuer les étapes suivantes dans vRealize Orchestrator :

  1. Appliquez la balise CODESTREAM au workflow vRO.
  2. Marquez le workflow vRO comme étant global.

Conditions préalables

  • Vérifiez que vous pouvez accéder en tant qu'administrateur à une instance sur site de vRealize Orchestrator. Pour obtenir de l'aide, rapprochez-vous de votre propre administrateur et consultez la Documentation de vRealize Orchestrator.
  • Assurez-vous d'être membre d'un projet dans Code Stream. Si ce n'est pas le cas, demandez à un administrateur de Code Stream de vous ajouter en tant que membre d'un projet. Reportez-vous à la section Ajout d'un projet dans Code Stream.
  • Dans Code Stream, créez un pipeline et ajoutez une étape.

Procédure

  1. En tant qu'administrateur, préparez un workflow vRealize Orchestrator pour l'exécution de votre pipeline.
    1. Dans vRealize Orchestrator, recherchez le workflow que vous devez utiliser dans votre pipeline, tel qu'un workflow pour activer un utilisateur.
      Si vous avez besoin d'un workflow qui n'existe pas, vous pouvez le créer.
    2. Dans la barre de recherche, entrez Workflow de balise pour trouver le workflow nommé Workflow de balise.
    3. Sur la fiche nommée Workflow de balise, cliquez sur Exécuter afin d'afficher la zone de configuration.
    4. Dans la zone de texte Workflow balisé, entrez le nom du workflow à utiliser dans votre pipeline Code Stream, puis sélectionnez-le dans la liste.
    5. Dans les zones de texte Balise et Valeur, entrez CODESTREAM en lettres majuscules.
    6. Cochez la case nommée Balise globale.
    7. Cliquez sur Exécuter afin d'associer la balise nommée CODESTREAM au workflow que vous devez sélectionner dans votre pipeline de Code Stream.
    8. Dans le volet de navigation, cliquez sur Workflows et vérifiez que la balise nommée CODESTREAM apparaît sur la fiche du workflow que votre pipeline va exécuter.
      Après la connexion à Code Stream et l'ajout d'une tâche vRO à votre pipeline, le workflow balisé s'affiche dans la liste des workflows.
  2. Dans Code Stream, créez un point de terminaison pour votre instance de vRealize Orchestrator.
    1. Cliquez sur Points de terminaison > Nouveau point de terminaison.
    2. Sélectionnez un projet.
    3. Entrez un nom pertinent.
    4. Entrez l'URL du point de terminaison vRealize Orchestrator.
      Utilisez ce format : https://vro-appliance.yourdomain.local:8281
      N'utilisez pas ce format : https://vro-appliance.yourdomain.local:8281/vco/api
      L'URL d'une instance de vRealize Orchestrator intégrée au dispositif vRealize Automation est le nom de domaine complet du dispositif sans port. Par exemple : https://vra-appliance.yourdomain.local/vco
      Pour les dispositifs vRealize Orchestrator externes à partir de vRealize Automation 8.x, le nom de domaine complet du dispositif est https://dispositif-vro.votredomaine.local
      Pour les dispositifs vRealize Orchestrator externes inclus avec vRealize Automation 7.x, le nom de domaine complet du dispositif est https://dispositif-vro.votredomaine.local:8281/vco
      Si un problème se produit lorsque vous ajoutez le point de terminaison, vous devrez peut-être importer une configuration YAML avec une empreinte digitale de certificat SHA-256 avec les deux-points supprimés. Par exemple, B0:01:A2:72... devient B001A272.... L'exemple de code YAML ressemble à ce qui suit :
      ```
      ---
      project: Demo
      kind: ENDPOINT
      name: external-vro
      description: ''
      type: vro
      properties:
        url: https://yourVROhost.yourdomain.local
        username: yourusername
        password: yourpassword
        fingerprint: <your_fingerprint>
      ```
    5. Cliquez sur Accepter le certificat si l'URL que vous avez entrée a besoin d'un certificat.
    6. Si la version du point de terminaison vRealize Orchestrator est comprise entre la version 8.0 et la version 8.7, vous pouvez sélectionner Authentification de baseou Jeton pour le type d'authentification. Si le point de terminaison vRealize Orchestrator est de version 8.8 ou de version ultérieure, vous devez sélectionner Jeton pour le type d'authentification.
      Note : Si le point de terminaison vRealize Orchestrator est de version 8.8 ou de version ultérieure, ne sélectionnez pas Authentification de base. L'authentification de base n'est pas prise en charge et la création du point de terminaison échouera.
      • Si vous sélectionnez Authentification de base, entrez le nom d'utilisateur et le mot de passe du serveur vRealize Orchestrator.

        Si vous utilisez un utilisateur non local pour l'authentification, vous devez omettre la partie domaine du nom d'utilisateur. Par exemple, pour vous authentifier avec [email protected] vous devez entrer svc_vro dans la zone de texte Nom d'utilisateur.

      • Si vous sélectionnez Jeton pour le type d'authentification, générez le jeton privé.
        Le jeton d'API VMware Cloud Services vous authentifie pour les connexions d'API externes avec Code Stream. Pour obtenir le jeton d'API :
        1. Cliquez sur Générer le jeton.
        2. Entrez l'adresse e-mail associée à votre nom d'utilisateur et votre mot de passe, puis cliquez sur Générer.
          Le jeton généré est valide pendant six mois. Il est également appelé jeton d'actualisation.
          • Pour conserver le jeton sous forme de variable pour une utilisation ultérieure, cliquez sur Créer une variable, entrez un nom pour la variable et cliquez sur Enregistrer.
          • Pour conserver le jeton sous forme de valeur de texte pour une utilisation ultérieure, cliquez sur Copier et collez le jeton dans un fichier texte pour l'enregistrer localement.
          Vous pouvez choisir à la fois de créer une variable et de stocker le jeton dans un fichier texte pour une utilisation ultérieure.
        3. Cliquez sur Fermer.
  3. Préparez votre pipeline pour exécuter la tâche vRO.
    1. Ajoutez une tâche vRO à votre étape de pipeline.
    2. Entrez un nom pertinent.
    3. Dans la zone Propriétés du workflow, sélectionnez le point de terminaison vRealize Orchestrator.
    4. Sélectionnez le workflow que vous avez marqué CODESTREAM dans vRealize Orchestrator.
      Si vous sélectionnez un workflow personnalisé que vous avez créé, vous devrez peut-être entrer les valeurs des paramètres d'entrée.
    5. Pour exécuter la tâche, cliquez sur Sur condition.
      Si vous devez appliquer des conditions pour la tâche vRealize Orchestrator, entrez-les dans la zone Condition.
    6. Entrez les conditions qui s'appliquent lors de l'exécution du pipeline.
      Quand exécuter le pipeline... Conditions à sélectionner…
      Sur condition

      Exécute la tâche de pipeline uniquement si la condition définie est évaluée comme étant true. Si la condition est false, la tâche est ignorée.

      La tâche vRO vous permet d'inclure une expression booléenne qui utilise les opérandes et les opérateurs suivants.

      • Variables de pipeline comme ${pipeline.variableName}. Utilisez uniquement des accolades lors de la saisie de variables.
      • Variables de sortie de tâche comme ${Stage1.task1.machines[0].value.hostIp[0]}.
      • Variables de liaison de pipeline par défaut comme ${releasePipelineName}.
      • Valeurs booléennes insensibles à la casse comme true, false, 'true', 'false'.
      • Valeurs entières ou décimales sans guillemets.
      • Valeurs de chaîne utilisées avec des guillemets simples ou doubles, comme "test" ou 'test'.
      • Types de chaînes et de valeurs numériques, comme == Equals et != Not Equals.
      • Opérateurs relationnels comme >, >=, < et <=.
      • Logique booléenne comme && et ||.
      • Opérateurs arithmétiques comme +, -, * et /.
      • Expressions imbriquées à l'aide de parenthèses.
      • Les chaînes qui incluent la valeur littérale ABCD sont évaluées comme étant false et la tâche est ignorée.
      • Les opérateurs unaires ne sont pas pris en charge.

      Un exemple de condition peut être ${Stage1.task1.output} == “Passed” || ${pipeline.variableName} == 39

      Toujours Si vous sélectionnez Toujours, le pipeline exécute la tâche sans conditions.
    7. Entrez un message d'accueil.
    8. Cliquez sur Valider la tâche et corrigez les erreurs qui se sont éventuellement produites.
  4. Enregistrez, activez et exécutez votre pipeline.
  5. Une fois le pipeline exécuté, examinez les résultats.
    1. Cliquez sur Exécutions.
    2. Cliquez sur le pipeline.
    3. Cliquez sur la tâche.
    4. Examinez les résultats, la valeur d'entrée et les propriétés.
      Vous pouvez identifier l'ID d'exécution du workflow, la personne qui a répondu à la tâche, le moment auquel elle a répondu et les commentaires qu'elle a inclus.

Résultats

Félicitations ! Vous avez marqué un workflow vRealize Orchestrator à utiliser dans Code Stream et ajouté une tâche vRO dans votre pipeline Code Stream afin qu'il exécute un workflow qui automatise une action dans votre environnement DevOps.

Exemple : Format de sortie de tâche vRO

Le format de sortie d'une tâche vRO ressemble à cet exemple.

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

Que faire ensuite

Continuez à inclure des tâches de workflow vRO dans vos pipelines afin de pouvoir automatiser des tâches dans vos environnements de développement, de test et de production.