Configurer un webhook

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 4 minutes de lecture
  • Configurez l’application webhook pour recevoir les mises à jour requises de Jenkins sur votre ServiceNow instance.

    Avant de commencer

    Rôle requis : admin

    Créer une clé d’autorisation pour le Spoke Jenkins v2

    Créez une clé d’autorisation pour autoriser les demandes à partir de Jenkins.

    Avant de commencer

    Rôle requis : admin.

    Procédure

    1. Accédez à la Tout > Définition du système > Scripts - Arrière-plan.
    2. Entrez cette commande dans le champ de texte Exécuter le script (JavaScript exécuté sur le serveur) :
      gs.info(GlideSecureRandomUtil.getSecureRandomString(32)) ;
    3. Cliquez sur Exécuter le script.
    4. Copiez et enregistrez la valeur générée pour une utilisation ultérieure.
      Secret client ou clé d’autorisation

    Fournir une clé d’autorisation pour le webhook

    Autorisez les demandes de Jenkins en fournissant une clé d’autorisation pour le webhook dans votre ServiceNow instance.

    Avant de commencer

    Rôle requis : admin

    Procédure

    1. Accédez à la Tout > Jenkins v2 > Détails du client de webhook.
    2. Cliquez sur Nouveau.
    3. Renseignez ces valeurs sur le formulaire :
      Tableau 1. Formulaire Détails du client de webhook Jenkins
      Champ Description
      Clé d'autorisation Clé d’autorisation que vous avez générée. Consultez Créer une clé d’autorisation pour le Spoke Jenkins v2 pour en savoir plus.
      Nom Nom permettant d’identifier l’enregistrement du client webhook.
    4. Cliquez sur Envoyer.

    Fournir une clé d’autorisation dans Jenkins

    Recevez des mises à jour de Jenkins en fournissant la clé d’autorisation dans Jenkins.

    Avant de commencer

    Rôle requis : admin.

    Procédure

    1. Connectez-vous à votre compte Jenkins.
    2. Cliquez et ouvrez la tâche pour laquelle vous souhaitez configurer votre Webhook.
    3. Cliquez sur Configurer.
    4. Dans l’onglet Liaisons , cliquez sur Ajouter et sélectionnez Jenkins.

      Pour plus d’informations sur l’utilisation du module d’extension, consultez Liaison d’informations d’identification.

      Fournisseur d’informations d’identification Jenkins
    5. Renseignez les champs du formulaire.
      Tableau 2. Formulaire Fournisseur d’informations d’identification Jenkins
      Champ Description
      Genre Sélectionnez Texte secret.
      Clé secrète Saisissez la clé d’autorisation. Consultez Créer une clé d’autorisation pour le Spoke Jenkins v2 pour en savoir plus.
      ID Fournir un identificateur unique pour identifier l’enregistrement.
    6. Cliquez sur Ajouter.
    7. Dans l’onglet Actions post-génération , configurez la tâche et spécifiez le script pour recevoir les mises à jour au niveau de votre ServiceNow instance.
      • Exemple de Windows script : curl « https://<instance-name>.service-now.com/api/sn_jenkinsv2_spoke/jenkins_v2_webhook/build_status » -X POST -H « content-type :application/json » -H « jenkinsKey : %<ID>% » -d « {\"Job_Name\ » :\"%JOB_NAME%\ »,\"Job_Path\ » :\"%JOB_URL%\ »,\"Build_Number\ » :\"%BUILD_NUMBER%\"} »
      • Exemple de script shell : curl « https://<instance-name>.service-now.com/api/sn_jenkinsv2_spoke/jenkins_v2_webhook/build_status » -X POST -H « content-type :application/json » -H « jenkinsKey : ${<ID>} » -d « {\"Job_Name\ » :\"${JOB_NAME}\ »,\"Job_Path\ » :\"${JOB_URL}\ »,\"Build_Number\ » :\"${BUILD_NUMBER}\"} »
      Remarque :
      L’ID dans le script est l’ID que vous avez fourni dans le formulaire Fournisseur d’informations d’identification Jenkins.
      Pour plus d’informations sur l’utilisation du module d’extension, consultez Tâche post-génération.
    8. Cliquez sur Appliquer.

    Fournir une description au flux secondaire

    Fournissez des descriptions conviviales aux flux secondaires dans le Spoke Jenkins v2.

    Avant de commencer

    Rôle requis : admin.

    Procédure

    1. Accédez à la Tout > Jenkins v2 > Flux secondaires de réponse au webhook.
    2. Cliquez sur Nouveau.
    3. Renseignez ces valeurs sur le formulaire :
      Champ Description
      Description Description du flux secondaire.
      Flux secondaire Flux secondaire requis dans le Spoke Jenkins v2.
    4. Cliquez sur Envoyer.

    Fournir des réponses à la table de décision

    Fournissez des flux secondaires en tant que réponses aux conditions mentionnées dans la table de décision. Lorsque les conditions spécifiées sont remplies, le flux secondaire associé est déclenché.

    Avant de commencer

    Rôle requis : admin

    Procédure

    1. Accédez à la Tout > Définition du système > Tables de décision.
    2. Ouvrez l’enregistrement du spoke Jenkins v2.
    3. Dans l’onglet Décisions , cliquez sur Nouveau.
    4. Renseignez ces valeurs sur le formulaire :
      Tableau 3. Formulaire Décision
      Champ Description
      Étiquette Étiquette unique pour identifier la politique d’acheminement.
      Réponse par défaut Option permettant de spécifier s’il s’agit de la réponse par défaut. La réponse par défaut s’applique lorsque les conditions ne sont pas remplies.
      Condition Conditions à respecter lorsque les événements requis se produisent dans Jenkins. Consultez Jenkins v2 Spoke pour plus d’informations sur les champs pris en charge.
      Réponse Flux secondaire qui doit être déclenché lorsque les conditions spécifiées sont remplies.
      1. Cliquez sur l’icône de recherche ( icône de recherche).
      2. Sélectionnez le flux secondaire requis dans la liste des documents.
        Remarque :
        Assurez-vous que le nom de la table est Flux secondaire de réponse au webhook Jenkins v2 [sn_jenkinsv2_spoke_webhook_answer_subflow].
    5. Cliquez sur Envoyer.

    Personnaliser un webhook

    Créez une politique d’acheminement de webhook et personnalisez le flux secondaire en fonction de vos besoins.

    Avant de commencer

    Rôle requis : admin

    Procédure

    1. Accédez à la Tout > Concepteur de flux > Concepteur.
    2. Cliquez sur Flux secondaires.
    3. Créez une copie du flux secondaire par défaut requis.
    4. Personnalisez le flux secondaire de réponse au webhook Jenkins : traitez le flux secondaire des informations de version selon vos besoins et publiez-le.
      Reportez-vous à la section Création de flux secondaires pour en savoir plus sur la création et l’utilisation de flux secondaires et Jenkins v2 Spoke pour en savoir plus sur les champs pris en charge par les politiques et les flux secondaires d’acheminement.
    5. Accédez à la Jenkins v2 > Flux secondaires de réponse au webhook.
    6. Cliquez sur Nouveau.
    7. Renseignez les champs du formulaire.
      Champ Description
      Description Description du flux secondaire.
      Flux secondaire Flux secondaire requis dans le Spoke Jenkins v2.
    8. Cliquez sur Envoyer.
      Remarque :
      Ces politiques d’acheminement sont enregistrées dans les tables de décision. Les utilisateurs sont mis en garde contre la mise à jour ou la modification directe des données dans ces tables.
    9. Accédez à la Définition du système > Tables de décision.
    10. Ouvrez l’enregistrement du spoke Jenkins v2 .
    11. Dans l’onglet Décisions , cliquez sur Nouveau.
    12. Renseignez les champs suivants du formulaire :
      Tableau 4. Formulaire Décision
      Champ Description
      Étiquette Étiquette unique pour identifier la politique d’acheminement.
      Réponse par défaut Option permettant de spécifier s’il s’agit de la réponse par défaut. La réponse par défaut s’applique lorsque les conditions ne sont pas remplies.
      Condition Conditions à respecter lorsque les événements requis se produisent dans Jenkins. Consultez Jenkins v2 Spoke pour plus d’informations sur les champs pris en charge.
      Réponse Flux secondaire qui doit être déclenché lorsque les conditions spécifiées sont remplies.
      1. Cliquez sur l’icône de recherche ( icône de recherche).
      2. Sélectionnez le flux secondaire requis dans la liste des documents.
        Remarque :
        Assurez-vous que le nom de la table est Flux secondaire de réponse au webhook Jenkins v2 [sn_jenkinsv2_spoke_webhook_answer_subflow].
    13. Cliquez sur Envoyer.