Intégrations créées par l'utilisateur dans Vélocité de changement DevOps
Les intégrations créées par l'utilisateur permettent d'intégrer des outils de planification, de codage et de test supplémentaires qui ne sont pas disponibles par défaut dans l'application Vélocité de changement DevOps.
L'application Vélocité de changement DevOps inclut des définitions d'outils pour l'intégration de certains outils courants de planification, de codage et Intégration de l'outil de test DevOps, mais vous pouvez également configurer des intégrations créées par l'utilisateur pour des outils supplémentaires dans votre environnement DevOps.
Objets d'intégration
L'intégration d'outil DevOps se compose des objets suivants.
Actions d'aptitude de l'outil
- Action de connexion :
Lors de la connexion, le flux secondaire de l'outil spécifique est appelé et l'état de connexion est mis à jour. Le message d'état de connexion s'affiche sur le formulaire.
Reportez-vous à la rubrique Flux secondaire de la fonctionnalité de connexion pour en savoir plus.
- Action de détection :
Lors de la détection, un enregistrement de demande d'importation est créé et le flux secondaire de l'outil spécifique est appelé (tel que défini dans l'enregistrement d'aptitude d'intégration). Les champs Détail et État de l'enregistrement de demande d'importation sont mis à jour avec le nombre d'éléments détectés, mis à jour et échoués.
La charge utile transformée se compose d'un tableau d'objets sous forme de chaîne JSON. Les éléments varient en fonction du type d'outil.
Reportez-vous à la rubrique Flux secondaire de la fonctionnalité de détection pour en savoir plus.
- Action d'importation :
L'action d'importation ne prend pas en charge la fonctionnalité d'importation historique.
- Action de recherche :
Le flux principal de recherche est fourni pour prendre en charge le type d'outil d'artefact dans un flux secondaire créé par votre développeur d'intégration.
- Action de notification (webhook) :
L'outil source est configuré manuellement (par votre développeur d'intégration) pour envoyer des données brutes à l'instance ServiceNow. La charge utile brute est ensuite transformée en objet JSON standard à l'aide d'un flux secondaire.
Consultez le Flux secondaire de fonctionnalité de notification et le point de terminaison DevOps - POST /devops/tool/{capability} de l'API DevOps pour en savoir plus.
Remarque :Si aucun flux secondaire n'est spécifié, la gestion des notifications par défaut a lieu (la charge utile d'origine est automatiquement copiée dans la charge utile transformée).Ce comportement est utile lorsque les données transactionnelles de l'outil sont prises en charge par ServiceNow DevOps telles quelles.
Consultez les charges utiles standard attendues dans le Flux secondaire de fonctionnalité de notification pour plus de détails.
Vue d'ensemble de la configuration de l'intégration DevOps
La configuration de l'intégration d'outils peut être effectuée par votre développeur d'intégration et votre administrateur DevOps.
- Développeur d'intégration
- Créez un enregistrement d'intégration d'outil dans DevOps pour définir l'outil à intégrer (outil source).
- Créez un Studio de workflow flux secondaire pour collecter et transformer les données de l'outil que vous intégrez (outil source).
- Créez un enregistrement de mappage des options d'outil dans DevOps pour mapper l'enregistrement d'intégration de l'outil à l'aptitude du type d'outil.Remarque :L'option Notifications (webhook) est prise en charge. Les options Connecter et Détecter sont également prises en charge.
- Créez un enregistrement d'aptitude d'intégration dans DevOps pour spécifier l'action relative à l'aptitude du type d'outil.
- DevOps administrateur
- Créez un enregistrement d'outil (planification, codage ou test) dans DevOps pour vous connecter à l'outil que vous intégrez (outil source).Remarque :L'enregistrement d'intégration d'outil doit être spécifié dans le champ Outil de l'enregistrement d'outil.
- Configurez l'outil source avec le webhook et les informations d'identification.
- Créez un enregistrement d'outil (planification, codage ou test) dans DevOps pour vous connecter à l'outil que vous intégrez (outil source).
Événements entrants
Un événement entrant sert de zone intermédiaire au flux de notifications qui prend en charge le retraitement des charges utiles ayant échoué. En d'autres termes, il est possible de relancer un enregistrement présentant un état d'erreur suite à un échec d'intégration ou de transformation.
Si un enregistrement d'événement entrant est à l'état Erreur, le flux n'a pas pu insérer l'enregistrement dans les tables DevOps principales.
Ces actions peuvent résoudre les erreurs courantes.
| Erreur | Action |
|---|---|
| Champs obligatoires manquants | La charge utile transformée ne correspond pas à la charge utile standard. Reportez-vous aux charges utiles standard et JSON fournies. |
| Référentiel non marqué pour le suivi | Il est impossible d'insérer la validation. L'administrateur DevOps doit suivre le référentiel. |
| [Flux secondaire] n'a pas été publié dans le périmètre de l'application [app_scope] | Le flux secondaire est créé, mais pas encore publié. |
| Exception de délai d'expiration | Le flux secondaire prend plus de temps que la valeur définie dans la propriété : com.glide.hub.flow_api.default_execution_time Consultez FlowAPI - executeSubflowQuick(nom de chaîne, entrées de mappage, délai d'expiration du numéro) pour plus de détails. Remarque : L'exécution du flux secondaire dépasse la valeur définie dans le champ Délai d'expiration de l'enregistrement Aptitude d'intégration. |
| Flux secondaire correspondant introuvable pour l'intégration de l'aptitude de notification et de l'outil [tool_integration_sys_id] | Le flux n'est pas parvenu à trouver le flux secondaire correspondant. Vérifiez la procédure de configuration de l'intégration. |
| La charge utile ne correspond pas à l'aptitude attendue. | Le type d'aptitude de la charge utile d'origine (charge utile envoyée) est différent de l'aptitude de type d'outil configurée dans votre mappage d'aptitude de l'outil. Le type de charge utile doit correspondre à l'aptitude du type d'outil configurée dans l'intégration de votre outil. |
- L'outil source n'a pas transmis l'ID de l'outil en tant que paramètre de requête.
- L'outil source a transmis un ID d'outil, mais il n'y a pas d'ID d'outil correspondant dans l'instance.
Mappages d'outils
Un outil peut être mappé sur plusieurs options.
| Intégration d'outils | Aptitude du type d'outil | Mappages des aptitudes de l'outil | |
|---|---|---|---|
|
|
Plan
Code
Orchestration
Test
|
|
Un mappage des aptitudes de l'outil peut être mappé sur plusieurs actions.
| Mappages des aptitudes de l'outil | Action de l'outil | Option d'intégration | |
|---|---|---|---|
|
|
Agile Development 2.0
Azure DevOps
Bitbucket
GitHub
GitHub Enterprise
GitLab
Jenkins
Jira
Rally
|
|
Plusieurs types de tests peuvent être mappés sur chaque intégration d'outil.
| Type de test | Intégration d'outils | Mappage de type de test |
|---|---|---|
Unité : JUnit, XUnit, NUnit, test unitaire Fonctionnel :
Performances : Charge |
|
Azure DevOps
Jenkins
GitLab
GitHub et GitHub Enterprise
|