Intégration GitHub (via Microsoft Power Automate) - Clôturer un ticket Service Manager rattaché à une pull request

Modifié le 19/08/2022 09:58

IntegrationIntroduction

Il existe plusieurs moyens d’intégrer des systèmes tiers avec Product name - ev itsm.png. Cela, en fonction des besoins métiers, des contraintes d’architecture et de sécurité en vigueur ainsi que des spécificités de chaque application ou service tiers.

Cette page présente un processus d’intégration type déjà mis en œuvre dans un contexte client. 

Pour plus de détails sur cette intégration (scripts à utiliser, etc.), veuillez contacter les départements "Consulting & Professional Services" et Support d'Logo - EasyVista.png ou vos fournisseurs de services et intégrateurs habituels.
 

Synthèse de l'intégration

GitHub est un service en ligne qui permet d'héberger des sites web, des fichiers de code source, ... et toute la chronologie de leurs mises à jour, en utilisant le logiciel de gestion de version Git. C'est également un espace collaboratif où chaque utilisateur peut contribuer aux projets mis en ligne publiquement.

Cette intégration vous permet de vérifier si la pull request rattachée à un ticket Service Manager est fusionnée (merge) lorsque le ticket est clôturé, en utilisant Microsoft Power Automate.

  • Une notification par e-mail est envoyée au responsable de la pull request lorsque celle-ci n'est pas fusionnée.
  • Un lien d'accès direct vers la pull request dans GitHub est ajouté.

Aperçu des outils utilisés dans cette intégration

  • Microsoft Power Automate (anciennement Microsoft Flow) permet d'automatiser les tâches répétitives en construisant des flux de travail via des applications web. Ces applications utilisent des connecteurs MS Power Automate (basés sur Microsoft Azure Logic Apps) ou la passerelle MS Graph pour s'interfacer avec n'importe quel point de terminaison via HTTP/HTTPS.
     
Flux d'intégration des données (sens) Type d'authentification Options du connecteur d'intégration

Logo Icon - GitHub.png

Down arrow.png

Logo Icon - Microsoft Flow.png

Down arrow.png

Logo - EV Service Manager.png

  • Selon le service externe utilisé (authentification prise en charge par Logic Apps)
  • Basic Authentication pour l'API REST Service Manager
  • Service Manager :

    EV Integration connector icon - Workflow.png    Workflow

    EV Integration connector icon - Business rule.png    Règle métier

  • MS Power Automate :

    EV Integration connector icon - Receive.png    Connecteur : Lors de la réception d'une demande HTTP

    (Trigger Service Manager => Logic Apps)

Versions disponibles
SaaS On Premise
Service Manager Check icon.png Check icon.png
Produit tiers Check icon.png N/A

Quelques définitions sur GitHub

Definitions_GitHub
  • GitHub est un service en ligne qui permet d’héberger des sites web, des fichiers de code source, ... et toute la chronologie de leurs mises à jour, en utilisant le logiciel de gestion de version Git. C'est également un espace collaboratif où chaque utilisateur peut contribuer aux projets mis en ligne publiquement.
  • Git est un logiciel de contrôle de version qui gère toutes les modifications des projets et les sauvegarde dans des versions, permettant de revenir en arrière à tout moment.
  • La copie, via Git, de l’intégralité des fichiers d'un projet et de ses versions est appelé un dépôt, ou repository. Il s'agit d'un espace de stockage sur le serveur centralisé GitHub qui contient chaque code source.
  • Des problèmes, ou issues, sont créés pour initier des discussions entre développeurs, des rapports de bugs, des suggestions d’évolution, ...
  • Une pull request est une procédure qui permet à un contributeur extérieur de proposer des modifications du code original à son auteur (request) puis de les reprendre et de les intégrer (pull).
  • Une review est une revue de code pour valider une pull request. Lorsque les modifications d'une review sont approuvées, la pull request est fusionnée, ou mergée, avec la version originale.

Flux d'échange dans Microsoft Power Automate

L'intégration entre Service Manager et GitHib lors de la clôture d'un ticket Service Manager rattaché à une pull request donne lieu à l'exécution d'un flux dans Microsoft Power Automate.

==> Flux Clôture d'un ticket Service Manager
         Data feed diagram 1 - EN.png

Prérequis

  • Vous devez demander à EasyVista la création de 2 champs dans la table SD_REQUEST, dédiés à Azure DevOps et GitHub.

Bonnes pratiques

BestPractice
  • La procédure décrit toutes les étapes de création des flux d'échange Microsoft Power Automate. Pour vous aider, téléchargez les fichiers .zip fournis avec cette intégration, qui contiennent les flux préparamétrés. Il vous suffit ensuite de renseigner les paramètres propres à votre environnement : identifiants d'accès à votre compte Azure, adresse du serveur EasyVista, identifiants d'accès à votre plateforme Service Manager, ...
  • Pour trouver facilement les connecteurs et les actions à créer dans le flux de travail Power Automate, utilisez la zone de recherche.

    exemple  Recherche des actions du connecteur Azure DevOps

    Microsoft Power Automate - Best Practice search connector.png

Attention

Caution_TitleActionInPowerAutomateFlow
  • Lorsque vous créez les actions du flux dans Microsoft Power Automate, il est impératif de les renommer comme indiqué dans la procédure. En effet, certaines informations font référence au titre de l'action et un changement de nom bloquerait le déroulement du flux.

    exemple  L'instruction {outputs('Create_a_Work_Item_(Bug)')?['body/id']} fait référence à l'action nommée Create a Work Item (Bug)

    Note : Les espaces dans le titre sont automatiquement remplacés par le caractère _

Processus d'intégration

 Prérequis  Demandez à EasyVista la création de 2 champs dans la table SD_REQUEST, dédiés à Azure DevOps et GitHub. Ajoutez-les sur la fiche Ticket  - Open url.png voir Procédure détaillée

1. Créez le flux MS Power Automate déclenché lors de la clôture d'un ticket Service Manager  - Open url.png voir Procédure détaillée

  • Note : Le flux nécessite de créer une connexion à GitHub et une connexion à Office 365 Outlook.

Best Practice icon.png  Importez le flux ci-dessous dans MS Power Automate, qui est préparamétré et contient toutes les étapes  - Open url.png voir Procédure d'import du flux
        Download icon.png  Flux Clôture d'un ticket Service Manager lié à une pull request

2. Dans Service Manager, créez une ressource Merge Pull Request utilisée dans une étape REST d'un processus  - Open url.png voir Procédure détaillée

Processus d'intégration pas à pas


AddDevOpsFieldsInTicketForm_Procedure

Ajout des champs dédiés à Azure DevOps et GitHub dans la table SD_REQUEST

Étape 1 : Ajout des champs dans la base de données par EasyVista

1. Effectuez une demande à EasyVista pour ajouter les 2 champs suivants.

  • Champ E_ADO_NUMBER de type nvarchar, taille 20 : stockage de l'identifiant de l'élément de travail Azure DevOps rattaché au ticket Service Manager.
  • Champ E_PR_NUMBER de type nvarchar, taille 20 : stockage du numéro de pull request GitHub rattachée au ticket Service Manager.
     

Étape 2 : Ajout des champs sur les fiches Ticket (incident / demande)

     Open url.png voir Procédure détaillée

1. Allez sur chaque fiche Ticket (incident / demande).

2. Cliquez sur Browse grey points icon.png dans le bandeau supérieur, puis sur Éditer la fiche.
La représentation principale de la fiche est affichée.

3. Sélectionnez et positionnez les 2 champs sur la fiche.

4. Cliquez sur Enregistrer puis sur Enregistrer et Fermer.

La fiche est réactualisée.
         Add fields DevOps in ticket form.png

Import du flux de travail dans Microsoft Power Automate

Note : Le flux nécessite de créer une connexion à GitHub et une connexion à Office 365 Outlook.

Étape 1 : Téléchargement du flux

1. Téléchargez le fichier ci-dessous sur votre ordinateur.

        Download icon.png  Flux Clôture d'un ticket Service Manager lié à une pull request

ImportFlowInMicrosoftPowerAutomate_Procedure

Étape 2 : Import du flux dans Microsoft Power Automate

1. Connectez-vous au site Microsoft Power Automate avec les informations d’identification de votre compte.

2. Cliquez sur Mes flux dans le menu latéral.
La liste de vos flux MS Power Automate est affichée.
         Microsoft Power Automate - Import flow - Flow list.png

3. Cliquez sur Importer dans la barre de menu et sélectionnez le fichier que vous avez téléchargé.

  • Une fois importé, le contenu du package est affiché.
  • L'icône Red nok icon.png indique que la connexion pour la ressource n'est pas trouvée.
    Microsoft Power Automate - Import flow - Package content.png
     

Étape 3 : Création des connexions nécessaires au flux

1. Cliquez sur le lien Sélectionner pendant l’import sous la colonne Importer la configuration, en regard de la ressource.
         Microsoft Power Automate - Import flow - Import setup link.png

Une fenêtre de configuration de l'import est affichée.
         Microsoft Power Automate - Import flow - Import setup window.png

2. Créez une nouvelle connexion pour la ressource ou sélectionnez une connexion existante.

Une connexion pour la ressource existe

  • Cliquez sur la connexion.
  • Cliquez sur Enregistrer.

    Microsoft Power Automate - Import flow - Import setup - Select existing connection.png

Aucune connexion pour la ressource n'existe

  • Cliquez sur + Créer.

    Microsoft Power Automate - Import flow - Import setup - Create connection.png

    • Une instance MS Power Automate est ouverte dans un nouvel onglet de votre navigateur internet.
    • La liste des connexions existantes est affichée.
               Microsoft Power Automate - Import flow - Import setup - Create connection 2.png
  • Cliquez sur + Nouvelle connexion.
  • Recherchez la connexion souhaitée via la zone de recherche, puis sélectionnez-la dans la liste.

exemple  Recherche de la connexion GitHub

Microsoft Power Automate - Import flow - Import setup - Create connection 3.png

Une fenêtre affichant la liste des autorisations à accorder à Microsoft Power Platform est affichée.

  • Cliquez sur Créer pour effectuer la création de la nouvelle connexion.
  • Cliquez sur Accepter pour accepter les conditions et accorder l'accès à Microsoft Power Platform.
    • Vous revenez sur l'onglet affichant la liste des flux MS Power Automate.
    • La nouvelle connexion pour la ressource est affichée dans la liste.

exemple  Nouvelle connexion GitHub

Microsoft Power Automate - Import flow - Import setup - New connection added.png

  • Fermez l'onglet du navigateur internet.
    Vous revenez sur l'onglet affichant le détail du package importé.
  • Cliquez sur Refresh List.
    La nouvelle connexion pour la ressource est affichée dans la fenêtre de configuration de l'import.
             Microsoft Power Automate - Import flow - Import setup - Refresh list.png
  • Cliquez sur la connexion puis sur Enregistrer.
    L'icône Black cross icon.png indique que la connexion pour la ressource est correctement effectuée.
             Microsoft Power Automate - Import flow - Import setup - New connection ok.png

3. Répétez les mêmes opérations pour chaque connexion nécessaire au flux.
 

Étape 3 : Import des ressources du package

1. Cliquez sur Importer.

          Microsoft Power Automate - Import flow - Button.png

L'icône Green ok icon.png devant chaque ressource du package indique que l'import du flux est correctement effectué.
         Microsoft Power Automate - Import flow - Ok.png

Étape 4 : Configuration des ressources du package

Note : Effectuez cette étape si un message en haut de la page indique que des ressources du package nécessitent une configuration.

1. Cliquez sur Save as new flow dans le message affiché en haut de page.

         Microsoft Power Automate - Import flow with error - Save as new flow.png

  • Une instance MS Power Automate est ouverte dans un nouvel onglet de votre navigateur internet.
  • Le flux de travail du package importé est affiché.
             Microsoft Power Automate - Import flow with error - Invalid connection.png

2. Cliquez sur l'action indiquant que la connexion est invalide.
La liste des connexions existantes pour le type de ressource est affichée.
         Microsoft Power Automate - Import flow with error - Invalid connection - Select connection.png

2. Cliquez sur la connexion définie pour le type de ressource.

Les propriétés de l'action sont affichées. Elles varient en fonction du type de ressource.

exemple  Propriétés non renseignées pour une action utilisant la ressource Azure DevOps

Microsoft Power Automate - Import flow with error - Invalid connection - Configure connection.png

3. Renseignez les informations de la connexion pour l'action.

exemple  Propriétés pour une action utilisant la ressource Azure DevOps

  • Nom de l'organisation : Sélectionnez le nom de votre organisation.
  • Nom du projet : Sélectionnez le nom de votre projet DevOps.

4. Répétez les mêmes opérations pour chaque action indiquant une erreur de connexion.

5. Cliquez sur Save.

  • Le message d'erreur disparaît sur chaque action.

exemple  Action pour la ressource Azure DevOps

Microsoft Power Automate - Import flow with error - Invalid connection - Configure connection ok.png

  • Toutes les connexions nécessaires au flux sont configurées.
  • Le flux de travail est créé.
             Microsoft Power Automate - Import flow - Success.png
     

Étape 5 : Configuration du flux de travail

1. Survolez le libellé du flux avec la souris puis cliquez sur Edit icon.png.
         Microsoft Power Automate - Open flow.png

Le flux de travail est affiché.
         Microsoft Power Automate - Detail flow.png

2. Reportez-vous à la procédure de configuration du flux importé.

Création du flux MS Power Automate

Description du flux de travail Clôture d'un ticket Service Manager lié à une pull request

Azure flow description - Close Service Manager ticket linked to a pull request.png
  • Étape 1 : Création de l'étape de déclenchement du flux (trigger)
  • Étape 2 : Récupération du ticket Service Manager
  • Étape 3 : Recherche de la date de fusion de la pull request lorsque le ticket Service Manager est rattaché à une pull request
    • Étape 3.a : Création de la condition pour tester l'existence d'un numéro de pull request sur le ticket Service Manager
    • Étape 3.b : Création de la condition pour tester l'existence d'une date de fusion sur la pull request
  • Étape 4 : Envoi d'une notification par e-mail au responsable lorsque la pull request n'est pas fusionnée
  • Étape 5 : Sauvegarde de la configuration du flux de travail


Étape 1 : Création de l'étape de déclenchement du flux

==> Le flux est déclenché lorsqu'un ticket Service Manager est clôturé.

1. Créez une action de déclenchement de type Lors de la réception d'une demande HTTP pour démarrer le flux de travail (Triggers).

Microsoft Power Automate - Trigger - When a http request is received.png
  • Renseignez les informations du déclencheur.
    • Body : Effectuez un copier-coller du schéma JSON ci-dessous.

      Afficher le schéma JSON

      {
         "$id": "http://example.com/example.json",
         "type": "object",
         "definitions": {},
         "$schema": "http://json-schema.org/draft-07/schema",
         "properties": {
             "Description": {
                 "$id": "/properties/Description",
                 "type": "string",
                 "title": "Description",
                 "default": "",
                 "examples": [
                     "{Description}"
                  ]
              },
             "id": {
                 "$id": "/properties/id",
                 "type": "string",
                 "title": "Id",
                 "default": "",
                 "examples": [
                     "{id}"
                  ]
              },
             "Host": {
                 "$id": "/properties/Host",
                 "type": "string",
                 "title": "Host",
                 "default": "",
                 "examples": [
                     "{Host}"
                  ]
              },
             "Account": {
                 "$id": "/properties/Account",
                 "type": "string",
                 "title": "Account",
                 "default": "",
                 "examples": [
                     "{Account}"
                  ]
              },
             "URL": {
                 "$id": "/properties/URL",
                 "type": "string",
                 "title": "URL",
                 "default": "",
                 "examples": [
                     "{URL}"
                  ]
              },
             "Title": {
                 "$id": "/properties/Title",
                 "type": "string",
                 "title": "Title",
                 "default": "",
                 "examples": [
                     "{Title}"
                  ]
              },
             "Priorite": {
                 "$id": "/properties/Priorite",
                 "type": "string",
                 "title": "Priorite",
                 "default": "",
                 "examples": [
                     "{Priorite}"
                  ]
              }
          }
      }
    • Méthode : Sélectionnez la valeur POST.
  • Sauvegardez le déclencheur.

    Les informations suivantes sont récupérées depuis Service Manager : Description du ticket, ID du ticket, Host, Account, URL, Titre du ticket, Score de priorité.


Étape 2 : Récupération du ticket Service Manager

          Action Azure - Get info ticket.png

1. Créez une action de type HTTP pour rechercher le ticket Service Manager.

Microsoft Power Automate - Action - HTTP Get.png
  • Renommez-la par HTTP Get Info Ticket, via Browse black points icon.png dans la barre de titre.
  • Renseignez les informations de l'action.
    • Méthode : Saisissez la valeur GET.
    • URI : Saisissez l'expression suivante.
      concat(triggerBody()?['URL'],'requests/',triggerBody()?['id'])

2. Créez une action de type Analyser JSON pour récupérer les informations du ticket Service Manager.

Microsoft Power Automate - Action - Parse JSON.png
  • Renommez-la par Parse JSON Get Group ID, via Browse black points icon.png dans la barre de titre.
  • Renseignez les informations de l'action.
    • Contenu : Sélectionnez la variable dynamique Body provenant de l'étape HTTP Get a comment.
    • Schema : Effectuez un copier-coller du schéma JSON ci-dessous.

      Afficher le schéma JSON

      {
         "type": "array",
         "items": {
             "type": "object",
             "properties": {
                 "id": {
                     "type": "integer"
                  },
                 "node_id": {
                     "type": "string"
                  },
                 "user": {
                     "type": "object",
                     "properties": {
                         "login": {
                             "type": "string"
                          },
                         "id": {
                             "type": "integer"
                          },
                         "node_id": {
                             "type": "string"
                          },
                         "avatar_url": {
                             "type": "string"
                          },
                         "gravatar_id": {
                             "type": "string"
                          },
                         "url": {
                             "type": "string"
                          },
                         "html_url": {
                             "type": "string"
                          },
                         "followers_url": {
                             "type": "string"
                          },
                         "following_url": {
                             "type": "string"
                          },
                         "gists_url": {
                             "type": "string"
                          },
                         "starred_url": {
                             "type": "string"
                          },
                         "subscriptions_url": {
                             "type": "string"
                          },
                         "organizations_url": {
                             "type": "string"
                          },
                         "repos_url": {
                             "type": "string"
                          },
                         "events_url": {
                             "type": "string"
                          },
                         "received_events_url": {
                             "type": "string"
                          },
                         "type": {
                             "type": "string"
                          },
                         "site_admin": {
                             "type": "boolean"
                          }
                      }
                  },
                 "body": {
                     "type": "string"
                  },
                 "state": {
                     "type": "string"
                  },
                 "html_url": {
                     "type": "string"
                  },
                 "pull_request_url": {
                     "type": "string"
                  },
                 "author_association": {
                     "type": "string"
                  },
                 "_links": {
                     "type": "object",
                     "properties": {
                         "html": {
                             "type": "object",
                             "properties": {
                                 "href": {
                                     "type": "string"
                                  }
                              }
                          },
                         "pull_request": {
                             "type": "object",
                             "properties": {
                                 "href": {
                                     "type": "string"
                                  }
                              }
                          }
                      }
                  },
                 "submitted_at": {
                     "type": "string"
                  },
                 "commit_id": {
                     "type": "string"
                  }
              },
             "required": [
                 "id",
                 "node_id",
                 "user",
                 "body",
                 "state",
                 "html_url",
                 "pull_request_url",
                 "author_association",
                 "_links",
                 "submitted_at",
                 "commit_id"
              ]
          }
      }


Étape 3 : Recherche de la date de fusion de la pull request lorsque le ticket Service Manager est rattaché à une pull request


Étape 3.a : Création de la condition pour tester l'existence d'une pull request rattachée au ticket Service Manager

3. Créez une action de type Condition pour tester l'existence d'un numéro de pull request sur le ticket Service Manager.

Action Azure - Get Service Manager ticket - Condition If there is a PR - Line condition.png
  • Renommez-la par Condition if there is a PR, via Browse black points icon.png dans la barre de titre.
  • Ajoutez les lignes de condition ci-dessous, en cliquant sur Add.
Valeur testée Ligne de condition
Champ E_PR_NUMBER renseigné sur le ticket Service Manager
  • Sélectionner valeur : Saisissez l'instruction suivante.
    @body('Parse_JSON_Get_Info_Ticket')?['E_PR_NUMBER']
  • Comparateur : Sélectionnez la valeur is not equal to.
  • Valeur : Sélectionnez la valeur "".

3. Renseignez les actions à réaliser lorsque le numéro de pull request est renseigné (condition de l'action Condition if there is a PR vérifiée).

  • Allez sur la branche If Yes.
  • Ajoutez les actions de l'étape 3.b, via Add an action.


Étape 3.b : Création de la condition pour tester l'existence d'une date de fusion sur la pull request

          Action Azure - Condition If there is a PR - Yes branch.png

1. Créez une action de type Get a Pull Request pour lire le numéro de pull request stocké dans le champ E_PR_NUMBER.

Action Azure - Condition If there is a PR - Yes branch - Get a PR.png
  • Renseignez les informations de l'action.
    • Repository Owner : Nom du compte du propriétaire du répertoire GitHub.
    • Repository Name : Nom du répertoire GitHub.
    • Pull Number : Saisissez l'expression suivante.
      @{body('Parse_JSON_Get_Info_Ticket')?['E_PR_NUMBER']}

2. Créez une action de type Condition pour tester l'existence d'une date de fusion sur la pull request.

Action Azure - Condition If there is a PR - Yes branch - Condition PR is merged - Line condition.png
  • Renommez-la par Condition PR is merged, via Browse black points icon.png dans la barre de titre.
  • Ajoutez les lignes de condition ci-dessous, en cliquant sur Add.
Valeur testée Ligne de condition
Date de fusion non renseignée
  • Sélectionner valeur : Saisissez l'instruction suivante.
    @outputs('Get_a_pull_request')?['body/merged']
  • Comparateur : Sélectionnez la valeur is equal to.
  • Valeur : Sélectionnez la valeur false.

3. Renseignez les actions à réaliser lorsque la date de fusion sur la pull request n'est pas renseignée (condition de l'action Condition PR is merged vérifiée).

  • Allez sur la branche If Yes.
  • Ajoutez les actions de l'étape 4, via Add an action.


Étape 4 : Envoi d'une notification par e-mail au responsable lorsque la pull request n'est pas fusionnée

1. Créez une action de type Send an email (V2) (connecteur Office 365 Outlook) pour créer un e-mail.

Action Azure - Condition If there is a PR - Yes branch - Condition PR is merged - Yes branch.png
  • Renommez-la par HTTP Get Group ID, via Browse black points icon.png dans la barre de titre.
  • Renseignez les informations de l'action.* To : Saisissez l'e-mail du destinataire. Attention : Évitez de renseigner l'adresse e-mail d'un groupe pour ne pas surcharger les boîtes mails de personnes non concernées.
    • Subject : Saisissez le sujet de l'e-mail de notification.
      [Anomalie] Clôture de l'action dans SM : PR non mergée
    • Body : Saisissez le texte de l'e-mail de notification.
      Bonjour, la PR @{outputs('Get_a_pull_request')?['body/number']} n'a pas été mergée merci de la merger. @{outputs('Get_a_pull_request')?['body/html_url']}


Étape 5 : Sauvegarde de la configuration du flux de travail

1. Cliquez sur Save en bas du flux.

          Azure flow - Save configuration.png

Service Manager : Création d'une ressource Merge Pull Request utilisée dans une étape REST d'un processus

Notes :

  • La ressource Merge Pull Request permet de vérifier si la pull request rattachée à un ticket Service Apps est fusionnée (merge) lorsque le ticket est clôturé.
  • Elle est rattachée à un service Microsoft Power Automate.
  • Elle est utilisée dans un processus Service Manager via un type d'action REST.
CreateInServiceManagerRestResource_Procedure

Étape 1 : Gestion des droits pour l'utilisation de l'API REST Service Manager

1. Allez sur le menu Administration > Gestion des accès > Profils utilisateur.

2. Sélectionnez un profil autorisé à utiliser l'API REST.

3. Cochez la case REST API.

Les modifications sont automatiquement enregistrées.

4. Répétez ces actions pour tous les profils autorisés.

Étape 2 : Création d'une ressource Merge Pull Request associée à un service Microsoft Power Automate

     Open url.png voir Procédure détaillée

Étape 2.a : Création d'un service Microsoft Power Automate

1. Allez sur le menu Administration > REST > Services.

2. Créez un nouveau service.

          New REST service - None authentication.png

3. Renseignez les informations ci-dessous.

  • Nom du service : Saisissez le libellé Microsoft Power Automate.
  • Méthode d'authentification : Aucune.
  • URL du service : URL d'accès au nouveau service Microsoft Power Automate.
    • Copiez-collez l'URL que vous avez conservée dans votre éditeur de texte lors de la création du flux MS Power Automate (étape de déclenchement du flux).
    • Conservez uniquement la partie affichée ci-dessous en jaune.

      https://prod-55.westeurope.logic.azure.com:443/workflows/a903f9140a874277be8b9dd39b5c4305/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=R-FJw5q_MEn-I-98MNF794bVtN91QIWFt8gixg-8

    • Remplacez prod-55.westeurope par {subdomain}.
       

Étape 2.b : Création d'une connexion au service Microsoft Power Automate

1. Créez une nouvelle connexion.

          New REST connection - None authentication.png

2. Renseignez les informations ci-dessous.

  • Nom de la connexion : Saisissez le libellé GitHub.
  • Méthode d'authentification : Aucune.
  • Nom du service : Sélectionnez le service Microsoft Power Automate créé à l'étape 2.a.
    L'URL du service est automatiquement affichée.
  • subdomain : Copiez-collez la valeur prod-55.westeurope de l'URL que vous avez conservée dans votre éditeur de texte.
     

Étape 2.c : Création d'une ressource rattachée au service Microsoft Power Automate

1. Créez une nouvelle ressource.

          New REST resource - None authentication.png

2. Renseignez les informations ci-dessous.

  • Label : Saisissez le libellé Merge Pull Request.
  • Uri de la ressource : Identifiant de la nouvelle ressource.
    • Copiez-collez l'URL que vous avez conservée dans votre éditeur de texte lors de la création du flux MS Power Automate (étape de déclenchement du flux).
    • Conservez uniquement la partie affichée ci-dessous en jaune.

      https://prod-55.westeurope.logic.azure.com:443/workflows/a903f9140a874277be8b9dd39b5c4305/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=R-FJw5q_MEn-I-98MNF794bVtN91QIWFt8gixg-8

  • Contenu : Corps de la requête contenant les données à mettre à jour. Copiez-collez le texte ci-dessous, sans insérer d'espace ni retour à la ligne.

Attention : Si vous collez un schéma JSON copié depuis un éditeur tiers (Microsoft Word, notepad++, etc.), des caractères invisibles peuvent être insérés et créer un dysfonctionnement dans le traitement de l'étape REST utilisant la ressource.

{"Description": "{Description}","id": "{id}","Host": "{sys.EVSM_HOST}","URL": "{sys.EVSM_REST_SERVICE_URL}","Account": "{sys.EVSM_ACCOUNT}","Title": "{Title}","Priorite": "{Priorite}"}

Étape 3 : Utilisation de la nouvelle ressource Merge Pull Request dans une étape REST d'un processus Service Manager

1. Ouvrez le workflow ou le processus lié à une règle métier.

  • Workflow : Références > Autres références > Workflow (Operation / Transition)
  • Règle métier : Administration > Règles métier > Processus associés

2. Cliquez-glissez la nouvelle ressource Merge Pull Request depuis la catégorie Actions REST de la palette des types d'actions vers l'éditeur graphique du processus.

Une nouvelle étape est ajoutée au processus.

3. Renseignez les propriétés de la nouvelle étape en double-cliquant dessus.

4. Cliquez sur Valider les modifications.

Liens vers d'autres intégrations

Liste des fichiers à télécharger

Note : Reportez-vous au processus d'intégration pas à pas pour leur utilisation.

         Download icon.png  Flux Clôture d'un ticket Service Manager lié à une pull request

Tags :
Powered by XWiki © EasyVista 2022