---
sourceDocument: Gestion des services IT Australie
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/it-service-management

 Release :

    - australia

ft:locale :

    - fr-FR

ft:publication_title :

    - Gestion des services IT Australie

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# Tâches de pipeline Azure DevOps

# Tâches de pipeline Azure DevOps {#ariaid-title1}

* Rversion finale: Australia
* 
* Mis à jour 12 mars 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 13 minutes de lecture

Utilisez ces tâches dans votre pipeline Azure DevOps pour interagir avec le modèle de données DevOps Config.  
Important :  
DevOps Config est désormais obsolète et n'est plus pris en charge ni disponible pour une nouvelle activation.

Ces tâches sont fournies pour créer une définition de pipeline spécifique afin d'atteindre votre objectif.  
* ServiceNow-DevOps-Configuration-Agent-Charger-ConfigurationChargez les données de configuration dans un élément déployable dans le modèle de données par le biais de la Tâche d'agent.

* ServiceNow-DevOps-Configuration-Agent-Obtenir-InstantanéObtenir les instantanés d'une application.

* ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané-NomExtraire le nom d'un instantané.

* ServiceNow-DevOps-Configuration-Agent-Publier-InstantanéPublier un instantané de vos données de configuration.

* ServiceNow-DevOps-Configuration-Agent-Exporter-InstantanéExporter un sous-ensemble de vos données de configuration.

* ServiceNow-DevOps-Configuration-Agent-Inscrire-PipelineInscrire un ensemble de changements et/ou un instantané pour une exécution de pipeline.

* ServiceNow-DevOps-Configuration-Agent-Valider-InstantanéValider les données de configuration par rapport aux politiques de l'organisation.

* ServiceNow-DevOps-Serveur-Changement-AccélérationCréer une demande de changement dans le cadre du pipeline.

{#devops-config-azure-integration__ul_qcb_5cf_psb}

## ServiceNow-DevOps-Configuration-Agent-Charger-Configuration {#devops-config-azure-integration__section_qjz_nqg_wpb}

Tâche de chargement d'un fichier de configuration à un emplacement donné dans un modèle de données d'application.  
Cette tâche est destinée à être utilisée de manière itérative pour tous les fichiers de configuration que l'utilisateur choisit de charger dans son modèle de données d'application pendant l'exécution du pipeline.  
Remarque :  
Les fichiers préchargés doivent être dans un format compatible.

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du pipeline DevOps. |
    | applicationName | Spécifie l'application dans laquelle les données de configuration sont chargées. |
    | deployableName | Spécifie l'élément déployable pour l'application (requis si la cible est un élément déployable). |
    | uploadTarget | Spécifie la cible du modèle de données vers laquelle les données de configuration sont chargées (par exemple, <kbd class="ph userinput">composant</kbd>, <kbd class="ph userinput">collection</kbd>, <kbd class="ph userinput">élément déployable</kbd>). |
    | collectionName | (Facultatif) Spécifie la collection vers laquelle les données de configuration seront chargées (requis si la cible est une collection). |
    | namePath | Spécifie le chemin d'accès vers le modèle de données dans lequel les données de configuration sont chargées. Remarque : Lors du chargement vers un dossier vars, vous devez commencer le nom du chemin par \<\< vars/ \>\> pour spécifier le chemin d'accès du dossier variable. |
    | configFilePath | Spécifie le dossier source à partir duquel les données de configuration sont chargées vers le chemin d'accès du composant ou de l'élément déployable dans le modèle de données. Vide correspond à la racine du référentiel. Utilisez des variables si les fichiers ne sont pas dans le référentiel (par exemple, <kbd class="ph userinput">$(agent.builddirectory)</kbd>). |
    | convertPath | (Facultatif) Spécifie s'il faut conserver la structure des répertoires des fichiers de configuration (par rapport à l'espace de travail) et convertir les répertoires en chemins d'accès dans le modèle de données. Par défaut, la valeur est faux. |
    | dataFormat | Spécifie le format de données du config_file (par exemple, <kbd class="ph userinput">JSON</kbd>, <kbd class="ph userinput">YAML</kbd>, <kbd class="ph userinput">XML</kbd>...). |
    | changesetNumber | (Facultatif) Spécifie l'ensemble de changements (ouvert) auquel cette activité de chargement est associée. S'il n'est pas fourni, un nouvel ensemble de changements est créé. Remarque : Utilisé uniquement pour plusieurs scénarios de chargement. |
    | autocommit | Spécifie si les données de configuration doivent être validées après le chargement (vrai/faux). Par défaut, la valeur est faux. |
    | autoValidate | Spécifie si les données de configuration doivent être validées pendant la validation (vrai/faux). La valeur par défaut est vrai. |
    [ ]

    {#devops-config-azure-integration__table_hpv_5x2_psb}

Variable de sortie
:

    |-|-|
    | changesetNumber | Enregistrement de l'ensemble de changements créé/validé pendant le chargement. Attribuez un nom à la tâche afin qu'elle puisse être utilisée ultérieurement dans le pipeline (par exemple, <kbd class="ph userinput">componentUpload</kbd>). |
    [ ]

    {#devops-config-azure-integration__table_qjq_rbb_w5b}

Exemple : configuration du chargement
:


        -task: ServiceNow-DevOps-Config-Agent-Upload-Config
         name: componentUpload​
         inputs:​
           connectedServiceName: 'MyServiceNowInstance'​
           applicationName: 'PaymentDemo'​
           uploadTarget: 'component'​
           namePath: 'wep-api-v1.0'
           configFilePath: 'k8s/helm/values.yml'​
           dataFormat: 'yaml'
           autoCommit: true​
           autoValidate: true​
         
Exemple : chargements multiples (composant)
:   Vous pouvez appeler la tâche de chargement plusieurs fois pour charger des données de configuration dans différents formats de fichier à partir de différents emplacements, tout en conservant la partie des chargements d'un seul ensemble de changements.

    * Lors du premier chargement, nommez la tâche afin que la variable de sortie changesetNumber puisse être réutilisée lors des chargements suivants.  
      Chargement du fichier YAML :


          -task: ServiceNow-DevOps-Config-Agent-Upload-Config​
             name: componentUpload​
             inputs:​ 
               connectedServiceName: 'MyServiceNowInstance'​
               applicationName: 'PaymentDemo'​
               uploadTarget: 'component'​
               namePath: 'wep-api-v1.0'
               configFilePath: 'k8s/helm/values.yml'​
               dataFormat: 'yaml'
               autoCommit: false​
               autoValidate: false​

    * Dans les chargements suivants, référencez la variable de sortie changesetNumber du premier chargement en tant que variable d'entrée.  
      Chargement du fichier JSON :


          -task: ServiceNow-DevOps-Config-Agent-Upload-Config
             inputs:​
               connectedServiceName: 'MyServiceNowInstance'
               applicationName: 'PaymentDemo'
               uploadTarget: 'component'
               namePath: 'wep-api-v1.0'
               configFilePath: 'featureToggles/set1.json'
               dataFormat: 'json'
               autoCommit: true​
               autoValidate: true​
               changesetNumber: '$(componentUpload.changesetNumber)'

    {#devops-config-azure-integration__ul_qvy_52b_w5b}

Exemple : chargements multiples (collection et variables)
:   Vous pouvez appeler la tâche de chargement plusieurs fois pour charger des données de configuration dans différents formats de fichier à partir de différents emplacements, tout en conservant la partie des chargements d'un seul ensemble de changements.

    * Lors du premier chargement, veillez à nommer la tâche afin que la variable de sortie changesetNumber puisse être réutilisée lors des chargements suivants.  
      Chargement du fichier XML :


          -task: ServiceNow-DevOps-Config-Agent-Upload-Config​
             name: componentUpload​
             inputs:​ 
               connectedServiceName: 'MyServiceNowInstance'​
               applicationName: 'PaymentDemo'​
               uploadTarget: 'collection'​
               collectionName: 'release-1.0'​
               namePath: 'v1-common-configs'
               configFilePath: 'infra/v1/config.xml'​
               dataFormat: 'xml'
               autoCommit: false​
               autoValidate: false​

    * Dans les chargements suivants, référencez la variable de sortie changesetNumber du premier chargement en tant qu'entrée.  
      Chargement du fichier JSON :


          -task: ServiceNow-DevOps-Config-Agent-Upload-Config
             inputs:​
               connectedServiceName: 'MyServiceNowInstance'
               applicationName: 'PaymentDemo'
               uploadTarget: 'deployable'
               deployableName: 'Production-EMEA'
               namePath: 'vars/dbSettings'
               configFilePath: 'infra/prodc/dbSettings.json'
               dataFormat: 'json'
               autoCommit: true​
               autoValidate: true​
               changesetNumber: '$(componentUpload.changesetNumber)'

    {#devops-config-azure-integration__ul_zvz_b5m_dwb}

    Remarque :  
    Pour charger vers un dossier de variables, uploadTarget doit être défini sur <kbd class="ph userinput">élément déployable</kbd> et les valeurs correctes doivent être définies pour deployableName et changesetNumber.

## ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané {#devops-config-azure-integration__section_nkh_4y2_psb}

Cette tâche est destinée à être utilisée dans différents scénarios :

* Récupérer un instantané spécifique.À la suite du flux CD, un instantané spécifique est récupéré afin qu'il puisse être publié, puis exporté pour être consommé en aval (par exemple, pour mettre en service une infrastructure ou une application).

* Récupérer le dernier instantané validé.Le dernier instantané validé est récupéré pour la combinaison application-élément déployable donnée.

* Récupérer tous les instantanés pour tous les éléments déployables impactés.Lorsque les fichiers de configuration sont chargés dans un modèle de données d'application, le système crée des instantanés pour tous les éléments déployables jugés impactés par le chargement. En supposant que la validation du dernier appel de chargement est activée, l'étape suivante dans le flux de CI consiste à itérer dans la liste des instantanés et à s'assurer qu'ils ont tous réussi la validation.

* Récupérer les derniers instantanés d'un élément déployable d'une application dans le cas où un chargement ne génère aucun instantané.Un ensemble de données de configuration peut être déployé dans un environnement pour une combinaison application-déployable-ensemble de changements lorsqu'aucun changement de configuration n'est apporté.

* Afficher les résultats de validation de politique dans une exécution de pipeline.Affichez les résultats de validation de politique sous forme de résultats de tests sur la page Résultats des tests de version ADO, y compris conformes avec exception, lors de l'obtention d'un instantané.

{#devops-config-azure-integration__ul_lgc_ry2_psb}

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du pipeline DevOps (définie dans les paramètres de connexion de service du projet). |
    | applicationName | Spécifie l'application vers laquelle charger les données de configuration ou exporter les données. |
    | deployableName | (Facultatif) Spécifie l'élément déployable (par l'application spécifiée) sur lequel obtenir les dernières données d'instantané. |
    | changesetNumber | (Facultatif) Spécifie l'ID de l'ensemble de changements pour l'ensemble applicable de changements de configuration. |
    | isValidated | (Facultatif) Spécifie s'il faut renvoyer uniquement les instantanés qui sont réussis ou réussis avec une exception (vrai/faux). La valeur par défaut est vrai. |
    | continueWithLatest | (Facultatif) Spécifie s'il faut renvoyer le dernier instantané selon la combinaison <kbd class="ph userinput">applicationName</kbd>-<kbd class="ph userinput">deployableName</kbd>-<kbd class="ph userinput">changesetNumber</kbd> si aucun instantané n'est généré (vrai/faux). Par défaut, la valeur est faux. |
    [ ]

    {#devops-config-azure-integration__table_dmc_nz2_psb}

Variable de sortie
:

    |-|-|
    | snapshotObject | Objet JSON contenant les instantanés demandés. Attribuez un nom à la tâche afin qu'elle puisse être utilisée ultérieurement dans le pipeline (par exemple, <kbd class="ph userinput">getSnapshot</kbd>). |
    [ ]

    {#devops-config-azure-integration__table_gb4_yfb_w5b}

Exemple : instantané spécifique
:


        -task: ServiceNow-DevOps-Config-Agent-Get-Snapshot
         name: getSnapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           deployableName: 'Production'
           changesetNumber: 'Chset-16'
           isValidated: true
           continueWithLatest: true

Exemple : les derniers instantanés validés (pour une combinaison application-élément déployable donnée).
:


        -task: ServiceNow-DevOps-Config-Agent-Get-Snapshot
         name: getSnapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           deployableName: 'Production'
           isValidated: true

Exemple : tous les instantanés de l'ensemble de changements
:


        -task: ServiceNow-DevOps-Config-Agent-Get-Snapshot
         name: getSnapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           changesetNumber: 'Chset-16'

Exemple : afficher les résultats de validation de politique

:   Affectez une variable au chemin d'accès au fichier qui contient les résultats de validation d'instantané générés pendant la tâche <kbd class="ph userinput">ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané</kbd>.

    Pour charger les résultats de validation de l'instantané dans l'exécution de votre pipeline, vous devez exploiter la [tâche Publier les résultats des tests v2](https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/publish-test-results-v2?view=azure-pipelines&tabs=trx,trxattachments,yaml) native ADO, en utilisant la variable comme entrée.  


        stages:
        - stage: Two
          jobs:
            - job: A
        	variables:
              - name: validationResultsPath
                value: 1/TEST_DATA_$(Build.DefinitionName)_$(Build.BuildNumber)_*.xml
              steps:
                - task: PublishTestResults@2
                  inputs:
                     testResultsFormat: 'JUnit'
                     testResultsFiles: '$(validationResultsPath)'
                     searchFolder: '$(System.WorkFolder)'

## ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané-Nom {#devops-config-azure-integration__section_ic5_11f_psb}

Cette tâche est utilisée en tant que suivi de la tâche <kbd class="ph userinput">ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané-Nom</kbd> pour obtenir le nom de l'instantané à partir d'un instantané particulier. À partir de là, le nom de l'instantané peut être utilisé comme entrée dans une tâche en aval, comme la publication de l'instantané.

Variables d'entrée
:

    |-|-|
    | deployableName | Spécifie l'élément déployable pour obtenir l'objet d'instantané renvoyé par la tâche <kbd class="ph userinput">ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané</kbd>. |
    | script | Spécifie le script permettant d'extraire le nom de l'instantané de l'objet de l'instantané. |
    [ ]

    {#devops-config-azure-integration__table_ctq_f1f_psb}

Variable de sortie
:

    |-|-|
    | snapshotName | Nom de l'instantané pour l'élément déployable. Attribuez un nom à la tâche afin qu'elle puisse être utilisée ultérieurement dans le pipeline (par exemple, <kbd class="ph userinput">getSnapshotName</kbd>). |
    [ ]

    {#devops-config-azure-integration__table_u4n_hgb_w5b}

Exemple : obtenir le nom de l'instantané

:   Utilisez ce script pour extraire le nom de l'instantané récupéré de la tâche <kbd class="ph userinput">ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané</kbd>.


        -task: ServiceNow-DevOps-Config-Agent-Get-Snapshot-Name
         inputs:
           deployableName: 'PRD'
           script: |
        	function run() {
                let name;
                let deployableName = process.argv[2];
                let jsonObj = $(getSnapshot.snapshotObjects);
                let size = jsonObj.result.length;
                for(let i=0; i<size; i++) {
                 obj = jsonObj.result[i];
                 if(obj["deployable_id.name"].toLowerCase() == deployableName) {
                   name = obj.name;
                   console.log(name);
                  }
                 }
                }
                run();

Exemple : obtenir le nom de l'instantané utilisé avec la tâche Obtenir un instantané

:   Appelez la tâche <kbd class="ph userinput">ServiceNow-DevOps-Configuration-Agent-Obtenir-Instantané-Nom</kbd> juste après la tâche <kbd class="ph userinput">ServiceNow-DevOps--Configuration-Agent-Obtenir-Instantané</kbd> pour renvoyer le nom de l'instantané.

    Obtenir les instantanés (renvoie un objet JSON contenant les instantanés impactés) :


        -stage: Two​
         jobs:​
            -job: B​
             steps:​
                -task: ServiceNow-DevOps-Config-Agent-Get-Snapshot
                 name: getSnapshot​
                 inputs:​
                    connectedServiceName: 'MyServiceNowInstance'​​
                    applicationName: 'PaymentDemo'​
                    deployableName: 'Production-2'
                    changesetNumber: 'Chset-16'​

    Obtenir le nom de l'instantané (renvoie le nom de l'instantané pour un élément déployable spécifique) :


        -stage: Two​
         jobs:​
            - job: B​
              steps:​
                - task: ServiceNow-DevOps-Config-Agent-Get-Snapshot
                  name: getSnapshotName​
                  inputs:​
                      deployableName: 'Production-2'
                      script:|​
                      function run() {​
                       let name;​
                       let deployableName = process.argv[2]; ​
                       let jsonObj = $(getSnapshot.snapshotObjects);​
                       let size = jsonObj.result.length;​
                       for(let i=0; i<size ;i++) {​
                        obj = jsonObj.result[i];​
                        if(obj["deployable_id.name"].toLowerCase() == deployableName) {​
                         name = obj.name;​
                         console.log(name); // This standard output of inline script is given as the task output​
                        }​
                       }​
                      }​
                      run();

    Utiliser le nom de l'instantané retourné dans le pipeline (par exemple, publier) :


        -stage: Three​
         jobs:​
            -job: C​
             variables:​
               varSnapshotName: $[stageDependencies.Two.B.outputs['getSnapshotName.snapshotName']]​
             steps:​
                -task: ServiceNow-DevOps-Config-Agent-Publish-Snapshot
                 inputs:​
                   connectedServiceName: 'MyServiceNowInstance'
                   applicationName: 'PaymentDemo'
                   deployableName: 'Production-2'
                   snapshotName: '$(varSnapshotName)'​

## ServiceNow-DevOps-Configuration-Agent-Publier-Instantané {#devops-config-azure-integration__section_fjq_k1f_psb}

Cette tâche publie un instantané pour l'application et l'élément déployable donnés. À partir de là, l'instantané peut être consommé via le processus d'exportation.

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du ServiceNow. |
    | applicationName | Spécifie l'application à publier. |
    | deployableName | Spécifie l'élément déployable pour que l'application publie les données de configuration. |
    | snapshotName | Spécifie le nom de l'instantané à publier. |
    [ ]

    {#devops-config-azure-integration__table_vd4_41f_psb}

Variable de sortie
:   Non applicable (renvoie vrai en cas de réussite, faux dans le cas contraire).

Exemple
:


        -task: ServiceNow-DevOps-Config-Agent-Publish-Snapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           deployableName: 'Production-2'
           snapshotName: 'Production-v23.dpl'

## ServiceNow-DevOps-Configuration-Agent-Exporter-Instantané {#devops-config-azure-integration__section_bn2_x1f_psb}

Cette tâche exporte un instantané pour l'application et l'élément déployable donnés. Spécifiez l'exportateur, les arguments pertinents de l'exportateur, le format d'exportation (par exemple, YAML, JSON...) et l'emplacement de sortie des données de configuration exportées. À partir de là, les données de configuration peuvent être utilisées directement en tant qu'entrée pour un outil de déploiement ou de provisionnement en aval du pipeline.

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du ServiceNow. |
    | applicationName | Spécifie l'application à partir de laquelle publier. |
    | deployableName | Spécifie l'élément déployable pour l'application à partir de laquelle exporter les données de configuration. |
    | snapshotName | Spécifie le nom de l'instantané à partir duquel exporter les données de configuration. |
    | exporterName | Spécifie l'exportateur à appliquer à l'instantané (par exemple, <kbd class="ph userinput">UniqueCDI</kbd>). |
    | args | (Facultatif) Spécifie les arguments à utiliser avec l'exportateur. |
    | exportFormat | Spécifie le format d'exportation des données de l'instantané (par exemple, <kbd class="ph userinput">INI</kbd>,<kbd class="ph userinput">YAML</kbd>, <kbd class="ph userinput">PROPS</kbd>). |
    | saveFile | Vérifie si le fichier doit être enregistré dans un référentiel Azure (vrai/faux). Par défaut, la valeur est faux. Remarque : L'accès au script par jeton autorisation/OAuth approprié est requis. Sinon, le fichier d'exportation est créé dans le répertoire de l'espace de travail du pipeline. |
    [ ]

    {#devops-config-azure-integration__table_mtx_bbf_psb}

Variable de sortie
:   Non applicable (renvoie vrai en cas de réussite, faux dans le cas contraire).

Exemple
:


        -task: ServiceNow-DevOps-Config-Agent-Export-Snapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           deployableName: 'Production-2'
           exporterName: 'returnAllData-nowPreview'
           dataFormat: 'yaml'
           args: ''
           snapshotName: 'Production-v23.dpl'
           saveFile: true​
           fileName: 'ExporterOutput/ExportData_$(build.definitionName)_$(build.buildNumber).yaml'
           
## ServiceNow-DevOps-Configuration-Agent-Inscrire-Pipeline {#devops-config-azure-integration__section_jms_kcf_psb}

Cette tâche lie un ensemble de changements et un instantané au pipeline afin qu'il puisse être suivi pendant l'exécution du pipeline. Dans Vélocité de changement DevOps, cela s'affiche dans l'interface utilisateur du pipeline.

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du pipeline DevOps. |
    | applicationName | Spécifie le nom de l'application. |
    | changesetNumber | (Facultatif) Spécifie l'ID de l'ensemble de changements à associer à l'exécution du pipeline. |
    | snapshotName | (Facultatif) Spécifie le nom de l'instantané à associer à l'exécution du pipeline. |
    [ ]

    {#devops-config-azure-integration__table_nym_4cf_psb}

Variable de sortie
:   Non applicable (renvoie vrai en cas de réussite, faux dans le cas contraire).

Exemple
:


        -task: ServiceNow-DevOps-Config-Agent-Publish-Snapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           changesetNumber: 'Changeset-143'

## ServiceNow-DevOps-Configuration-Agent-Valider-Instantané {#devops-config-azure-integration__section_a3d_t3b_ypb}

Valider les données de configuration par rapport aux politiques de votre organisation.

Variables d'entrée
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du ServiceNow. |
    | applicationName | Spécifie le nom de l'application à valider. |
    | deployableName | Spécifie l'élément déployable (par application spécifiée) à valider. |
    | snapshotName | (Facultatif) Spécifie le nom de l'instantané à valider. |
    | showResults | (Facultatif) Spécifie d'afficher les résultats de validation dans le journal de la console. |
    [ ]

    {#devops-config-azure-integration__table_hk2_nkf_psb}

Variable de sortie
:   Non applicable (renvoie vrai en cas de réussite, faux dans le cas contraire).

Exemple
:


        -task: ServiceNow-DevOps-Config-Agent-Validate-Snapshot
         inputs:
           connectedServiceName: 'MyServiceNowInstance'
           applicationName: 'PaymentDemo'
           deployableName: 'Production-2'
           snapshotName: ''
           showResults: false

## ServiceNow-DevOps-Serveur-Changement-Accélération {#devops-config-azure-integration__section_tcn_vqf_w5b}

Cette tâche est requise pour que les tâches sans agent (serveur) créent automatiquement une demande de changement dans ServiceNow Gestion des changements dans le cadre du pipeline Azure DevOps.

Dans DevOps Config, pour associer plusieurs instantanés du même ensemble de changements à une demande de changement, utilisez le nom de l'instantané et le nom de l'application pour suivre des données de configuration spécifiques pour un service d'application donné.

Pour plus d'informations sur la fonctionnalité Accélération des changements DevOps, consultez [Accélérer votre processus de changement DevOps](https://servicenow-prod.fluidtopics.net/8JkP~wzyJ0DNxA1JTMgs8Q "Activez la fonctionnalité d'accélération des changements de Vélocité de changement DevOps pour la création automatique de demandes de changement dans votre pipeline, et utilisez les flux et politiques d'approbation de changement pour automatiser l'approbation sous certaines conditions.").

Variables d'entrée (associées à DevOps Config)
:

    |-|-|
    | connectedServiceName | Spécifie la connexion du point de terminaison du pipeline DevOps. |
    | applicationName | Application associée à l'instantané joint à la demande de changement. |
    | snapshotName | Nom de l'instantané à joindre à la demande de changement. |
    [ ]

    {#devops-config-azure-integration__table_tsl_wsf_w5b}

Exemple
:


        -stage: ChangeRequest
         jobs:
            -job: 'changerequestjob'
             pool: server
             steps:
                -task: ServiceNow-DevOps-Server-Change-Acceleration
                 inputs:
                    connectedServiceName: 'MyServiceNowInstance'
                    applicationName: 'PaymentDemo'
                    snapshotName: 'Production-v23.dpl'

## Exemple de pipeline YAML {#devops-config-azure-integration__section_h2d_xkq_mwb}

    trigger:
      branches:
        include:
        - none
    stages:
    - stage: One
      displayName: Upload Configuration Data
      pool:
        vmImage: ubuntu-latest
      jobs:
      - job: A
        displayName: Upload
        steps:
        - task: ServiceNow-DevOps-Config-Agent-Upload-Config@1
          name: componentUpload
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            applicationName: 'PaymentDemo'
            uploadTarget: 'component'
            configFile: 'k8s/helm/values.yml'
            namePath: 'processor-api-v1.0'
            dataFormat: 'yaml'
            autoValidate: true
            autoCommit: true
            convertPath: true
    - stage: Two
      displayName: Get Latest Snapshot
      pool:
        vmImage: ubuntu-latest
      jobs:
      - job: B
        displayName: Get Snapshot
        variables:
        - name: varChangesetNumber
          value: $[stageDependencies.One.A.outputs['componentUpload.changesetNumber'] ]
        - name: varConfigValidationResults
            value: 1/TEST_DATA_$(Build.DefinitionName)_$(Build.BuildNumber)_*.xml
        steps:
        - task: ServiceNow-DevOps-Config-Agent-Get-Snapshot@1
          name: getSnapshot
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            applicationName: 'PaymentDemo'
            deployableName: 'Production-EMEA'
            changeSetNumber: '$(varChangesetNumber)'
            continueWithLatest: true
        - task: ServiceNow-DevOps-Config-Agent-Get-Snapshot-Name@1
          name: getSnapshotName
          inputs:
            deployableName: 'Production-EMEA'
            script: "function run() {\n  let name;\n  let deployableName = process.argv[2]; \n  let jsonObj = $(getSnapshot.snapshotObjects);\n  let size = jsonObj.result.length;\n  for(let i=0; i<size ;i++) {\n    obj = jsonObj.result[i];\n    if(obj[\"deployable_id.name\"].toLowerCase() == deployableName) {\n      name = obj.name;\n      console.log(name);   // This standard output of inline script is given as the task output\n    }\n  }\n}\nrun();\n"
        - task: PublishTestResults@2
              inputs:
                 testResultsFormat: 'JUnit'
                 testResultsFiles: '$(varConfigValidationResults)'
                 searchFolder: '$(System.WorkFolder)'
        - task: ServiceNow-DevOps-Config-Agent-Register-Pipeline@1
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            snapshotName: '$(getSnapshotName.snapshotName)'
            applicationName: 'PaymentDemo'
    - stage: Three
      displayName: Publish Snapshot
      pool:
        vmImage: ubuntu-latest
      jobs:
      - job: C
        displayName: Publish
        variables:
        - name: varSnapshotName
          value: $[stageDependencies.Two.B.outputs['getSnapshotName.snapshotName']]
        steps:
        - task: ServiceNow-DevOps-Config-Agent-Publish-Snapshot@1
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            applicationName: 'PaymentDemo'
            deployableName: 'Production-EMEA'
            snapshotName: '$(varSnapshotName)'
    - stage: ChangeRequest
      dependsOn:
      - Two
      - Three
      jobs:
      - job: 'changerequestjob'
        timeoutInMinutes: 2
        pool:
          name: server
        variables:
        - name: varSnapshotName
          value: $[stageDependencies.Two.B.outputs['getSnapshotName.snapshotName']]
        steps:
        - task: ServiceNow-DevOps-Server-Change-Acceleration@1
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            applicationName: 'PaymentDemo'
            snapshotName: '$(varSnapshotName)'
    - stage: Four
      displayName: Export Snapshot
      dependsOn:
      - Two
      - Three
      - ChangeRequest
      pool:
        vmImage: ubuntu-latest
      variables:
      - name: varSnapshotName
        value: $[stageDependencies.Two.B.outputs['getSnapshotName.snapshotName']]
      jobs:
      - job: D
        displayName: Export
        steps:
        - task: ServiceNow-DevOps-Config-Agent-Export-Snapshot@1
          inputs:
            connectedServiceName: 'MyServiceNowInstance'
            applicationName: 'PaymentDemo'
            deployableName: 'Production-EMEA'
            exporterName: 'returnAllData-now'
            dataFormat: 'yaml'
            snapshotName: '$(varSnapshotName)'
            saveFile: true
            fileName: 'ExportData_$(build.definitionName)_$(build.buildNumber).yaml'
        - task: CmdLine@2
          inputs:
            script: |
              echo Write your commands here
              echo Hello world
              tree $(Pipeline.Workspace)


