Intégrer à la gestion des changements ServiceNow
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Azure Pipelines prend en charge l’intégration à ServiceNow pour améliorer la collaboration entre les équipes de développement et informatiques. En incluant la gestion des modifications dans les pipelines de mise en production, les équipes peuvent réduire les risques associés aux modifications et suivre les méthodologies de management des services telles qu’ITIL tout en tirant pleinement parti d’Azure Pipelines.
Dans cet article, vous allez apprendre à :
- Configurer des instances ServiceNow.
- Inclure le processus de gestion des modifications ServiceNow comme porte de mise en production.
- Surveiller le processus de gestion des modifications à partir des pipelines de mise en production.
- Conserver les demandes de modification ServiceNow mises à jour avec les résultats du déploiement.
Prérequis
Ce tutoriel explique comment Utiliser les approbations et les barrières et comment Définir les approbations et les contrôles.
Une organisation Azure DevOps. Créez une organisation, si vous n’en avez pas déjà.
Une instance non-développeur de ServiceNow.
Configurer l’instance ServiceNow
Installez l’extension Azure Pipelines sur votre instance ServiceNow. Vous aurez besoin d’informations d’identificationHi pour terminer l’installation. Pour plus d’informations sur l’installation d’applications depuis le magasin ServiceNow, consultez Vue d’ensemble des achats.
Créez un nouvel utilisateur dans ServiceNow et accordez-lui le rôle suivant :
x_mioms_azpipeline.pipelinesExecution
.
Configurer l’organisation Azure DevOps
Installez l’extension Change Management de ServiceNow sur votre organisation Azure DevOps.
Créez une connexion de service ServiceNow dans votre projet Azure DevOps comme suit. Vous pouvez également utiliser l’authentification OAuth2.
Configurer le pipeline de mise en production
Accédez à votre pipeline de mise en production, puis sélectionnez l’icône Conditions de prédéploiement. Sélectionnez Portes et la porte de prédéploiement Change Management ServiceNow.
Sélectionnez la connexion de service que vous avez créée précédemment et renseignez les champs requis comme suit :
- Connexion ServiceNow : connexion à l’instance ServiceNow utilisée pour la gestion des modifications.
- Brève description : un résumé de la modification.
- Description :une description détaillée de la modification.
- Catégorie : la catégorie de la modification. Exemple : matériel, réseau, logiciel.
- Priorité : la priorité de la modification.
- Risque : le niveau de risque pour la modification.
- Impact : l’effet que le changement a sur l’entreprise.
- Élément de configuration : l’élément de configuration (CI) auquel la modification s’applique.
- Groupe d’affectation : le groupe auquel la modification est affectée.
- Planification de la demande de modification : la planification de la modification comme respecté par le flux de travail ServiceNow. La date et l’heure doivent être au format UTC et être aaaa-MM-jjTHH:mm:ssZ. Exemple : 2018-01-31T07:56:59Z.
- Paramètres de demande de modification supplémentaires : le nom doit être le nom du champ (et non l’étiquette) précédé de « u_ ». Exemple : u_backout_plan. La valeur doit être une valeur valide dans ServiceNow. Les entrées non valides sont ignorées.
- État souhaité de la demande de modification : la porte réussit et le pipeline se poursuit lorsque l’état de la demande de modification est identique à la valeur fournie.
- Avancé : spécifie une expression qui contrôle quand cette porte doit réussir. La demande de modification est définie en tant que racine[« result »] dans la réponse de ServiceNow. Exemple : « and(eq(root['result'].state, 'New'),eq(root['result'].risk, 'Low')) ». Pour plus d’informations, consultez Expressions.
- Variables de sortie : vous devez spécifier un nom de référence pour pouvoir utiliser des variables de sortie dans votre flux de travail de déploiement. Les variables de porte sont accessibles à l’aide de « PREDEPLOYGATE » comme « préfixe » dans un travail sans agent. Par exemple, lorsque le nom de référence est défini sur « gate1 », le numéro de modification peut être obtenu comme suit : $(PREDEPLOYGATE.gate1.CHANGE_REQUEST_NUMBER).
- CHANGE_REQUEST_NUMBER : numéro de la demande de modification.
- CHANGE_SYSTEM_ID : ID système de la demande de modification.
À la fin de votre pipeline de mise en production, ajoutez un travail sans agent avec une tâche Mettre à jour Change Request de ServiceNow.
- Connexion ServiceNow : connexion à l’instance ServiceNow utilisée pour la gestion des modifications.
- Numéro de la demande de modification : numéro de la demande de modification à mettre à jour.
- État mis à jour de la demande de modification : état à définir pour la demande de modification. Cette entrée est disponible si État de mise à jour est sélectionné.
- Fermer le code et fermer les notes : l’état de retour.
Notes
La tâche Mettre à jour la demande de modification ServiceNow échoue si aucun des champs de demande de modification n’est mis à jour pendant l’exécution. ServiceNow ignore les champs et valeurs non valides passés à la tâche.
Créer un pipeline de mise en production
Sélectionnez Créer une mise en production pour démarrer un nouveau pipeline de mise en production.
Votre pipeline doit créer une demande de modification dans ServiceNow dans le cadre des conditions de prédéploiement que vous avez créées précédemment.
Le pipeline attend que toutes les portes réussissent dans le même intervalle d’échantillonnage. Pour vérifier le numéro de modification, sélectionnez l’icône d’état pour afficher vos journaux de pipeline.
La demande de modification est mise en file d’attente dans ServiceNow et peut être consultée par le propriétaire du changement.
Le pipeline de mise en production qui a déclenché la nouvelle demande de modification se trouve dans la section métadonnées du pipeline Azure DevOps.
Lorsque la modification est prête pour l’implémentation (passée à l’état Implémenter), le pipeline reprend l’exécution et l’état de la porte doit retourner réussi.
La demande de modification est fermée automatiquement après le déploiement.
Pipelines Yaml
Ce tutoriel part du principe que vous disposez d’un pipeline yaml avec une seule étape qui se déploie dans un environnement « latest ».
Ajouter une vérification
Accédez à votre environnement « latest », sélectionnez le bouton points de suspension, puis sélectionnez Approbations et vérifications.
Sélectionnez le signe plus pour ajouter une nouvelle vérification, puis ajoutez la vérification de gestion des modifications ServiceNow à votre environnement. Utilisez la même configuration que celle que vous avez utilisée pour votre porte de prédéploiement.
Ajouter la tâche yaml
Ajoutez un travail de serveur à votre étape pour mettre à jour la demande de modification.
Enregistrez et exécutez votre pipeline. Une nouvelle demande de modification est créée automatiquement et le pipeline s’interrompt et attend la fin des vérifications.
Une fois les vérifications terminées, le pipeline doit reprendre l’exécution. La demande de modification est fermée automatiquement après le déploiement.
FAQ
Q : Quelles sont les versions de ServiceNow prises en charge ?
R : Nous prenons en charge les versions suivantes : Kingston, Londres, New York, Paris, Québec, Rome, San Diego et Tokyo.
R : Nous prenons en charge les versions suivantes : Kingston, Londres, New York, Paris et Québec.
R : Nous prenons en charge les versions suivantes : San Diego, Tokyo et Utah.
Q : Quels types de demandes de modifications sont pris en charge ?
R : Les demandes de modification normales, standard et d'urgence sont prises en charge par cette intégration.
Q : Comment définir des propriétés de modification supplémentaires ?
R : Vous pouvez spécifier des propriétés de modification supplémentaires à partir du champ Paramètres de demande de modification supplémentaires. Utilisez une paire clé-valeur au format JSON, avec le nom étant le nom du champ (et non l’étiquette) précédé de u_
.
Q : Puis-je mettre à jour des champs personnalisés dans la demande de modification avec des paramètres de demande de modification supplémentaires ?
R : Si des champs personnalisés sont définis dans la demande de modification, vous devez ajouter un mappage pour les champs personnalisés dans le mappage de transformation d’un jeu d’importation.
Q : Je ne vois pas de valeurs de liste déroulante renseignées pour les champs Catégorie, État et d’autres champs. Que dois-je faire ?
R : Les plug-ins Change Management Core et Change Management - State Model doivent être actifs sur votre instance ServiceNow pour que les listes déroulantes fonctionnent. Pour plus d’informations, consultez Mettre à niveau la gestion des modifications et mettre à jour les états des demandes de modification.
Ressources
- Configurer vos pipelines de mise en production pour des déploiements sécurisés
- Sentiment Twitter en tant que porte de mise en production
- Problèmes GitHub en tant que porte de mise en production
- Créer des portes personnalisées.
- Exemple de bibliothèque ServerTaskHelper