Création de DevOps flux secondaires
Pour les intégrations créées par les utilisateurs, créez un DevOps Studio de workflow flux secondaire pour collecter et transformer les données à partir de l’outil que vous intégrez.
ServiceNow Flow Designer est une ServiceNow AI Platform fonctionnalité que votre développeur d’intégration peut utiliser pour automatiser les processus à l’aide d’une séquence d’actions. Les conditions de déclenchement démarrent le flux et les variables transmettent les informations entre les actions.
Voir Flow Designer Flux secondaires pour plus d’informations sur la création d’un flux secondaire.
Flux secondaire de l’aptitude de notification
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : Référence.Événement entrant |
Sorties |
N/A |
Transformez la charge utile d’origine et enregistrez la charge utile finale dans le champ transformed_payload .
- Charge utile de l’aptitude de notification JSON standard attendue : outil de planification
- Remarque :L’attribut version dans la charge utile JSON est facultatif. Même si vous ne fournissez pas l’attribut de version, la charge utile est traitée avec succès.
{ "id": "STR1234", "type": "Story", "shortDescription": "Planning API Spec", "state": "In-progress", "createdDateTime": "1970-01-01T08:15:30-05:00", "assignedTo": { "name": "Leo Neo", "userName": "lenn", "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "email": "lenn@smithworksinc.com" }, // The Version attribute is optional "version": { "id": "REL1234", "shortDescription": "APIs Release", "createdDateTime": "1970-01-01T08:15:30-05:00", "app": { "id": "PRODUCT1234", "shortDescription": "Mobile UI", "createdDateTime": "1970-01-01T08:15:30-05:00", "url": "https://jira.com/mycompany/browse/PRODUCT-125" }, "url": "https://jira.com/mycompany/browse/REL-125" }, "app": { "id": "PRODUCT1234", "shortDescription": "Mobile UI", "createdDateTime": "1970-01-01T08:15:30-05:00", "url": "https://jira.com/mycompany/browse/PRODUCT-125" }, "url": "https://jira.com/mycompany/browse/HALOKEY-25" } - JSON standard attendu Charge utile de l’aptitude de notification : outil de codage
{ "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "url": "https://github.com/mycompany/mobileplatform/commit/3fa85f6457174562b3fc2c963f66afa6", "committedDate": "1970-01-01T08:15:30-05:00", "repository": { "name": "Platform-Mobile", "url": "https://github.com/mycompany/mobileplatform" }, "branch": { "name": "master", "path": "refs/heads/master" }, "committer": { "email": "lenn@smithworksinc.com" }, "details": [ { "additions": 0, "deletions": 0, "totalChanges": 0, "file": "src/test/java/com/mycompany/app/App.java", "action": "modified", "changes": "%40%40%20-30%2C6%20%2B30%2C18%20%40%40%20public%20void%20testAppConstructor%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%7D%0A%20%0A%2B%20%20%20%20%40Test%0A%2B%20%20%20%20public%20void%20testDatabase%28%29%0A%2B%20%20%20%20%7B%0A%2B%09%2F%2FThis%20is%20a%20test%20function%0A%2B%20%20%20%20%20%20%20%20App.main%28null%29%3B%0A%2B%20%20%20%20%20%20%20%20try%20%7B%0A%2B%20%20%20%20%20%20%20%20%20%20%20%20assertEquals%28%22Hello%20World%21%22%20%2B%20System.getProperty%28%22line.separator%22%29%2C%20outContent.toString%28%29%29%3B%0A%2B%20%20%20%20%20%20%20%20%7D%20catch%20%28AssertionError%20e%29%20%7B%0A%2B%20%20%20%20%20%20%20%20%20%20%20%20fail%28%22%22message%22%20is%20not%20%22Hello%20World%21%22%22%29%3B%0A%2B%20%20%20%20%20%20%20%20%7D%0A%2B%20%20%20%20%7D%0A%2B%0A%20%20%20%20%20%40Test%0A%20%20%20%20%20public%20void%20testAppMain%28%29%0A%20%20%20%20%20%7B" } ] }- Charge utile de l’aptitude de notification JSON standard attendue : outil d’orchestration
{ "toolId": "bc1d9454dbdb0810ae77f3c61d9619d1", "buildNumber": "100", "nativeId": "HILR/Prod #100", "name": "HILR/Prod", "id": "HILR/Prod #100", "url": "https://dev.azure.com/lenn/CorpSite-ADO/_build/results?buildId=100#Prod/", "isMultiBranch": "false", "orchestrationTaskUrl": "https://dev.azure.com/lenn/CorpSite-ADO/_build?name=HILR#Prod", "orchestrationTaskName": "CorpSite-ADO/HILR#Prod", "upstreamTaskUrl": "https://dev.azure.com/lenn/CorpSite-ADO/_build/results?buildId=100#UAT/", "upstreamId": "CorpSite-ADO/HILR#UAT", "result": "building", "startDateTime": "2020-03-20 22:59:27" }- JSON standard attendu Charge utile de l’aptitude de notification : outil de test
- Fonctionnel:
{ "name": "CorpSite-selenium#55", "duration": 78.802, "passedTests": 4, "failedTests": 0, "skippedTests": 0, "blockedTests": 0, "totalTests": 4, "startTime": "2020-06-30T18:12:31Z", "finishTime": "2020-06-30T18:12:31Z", "passingPercent": 100, // Use Artifact OR Package OR Build + Stage + PipelineName Attributes "packages": [{"name": "CorpSite-pkg1"}], "artifacts": [{"name": "CorpSite-artifact", "version": "1.0.0"}], "buildNumber": "55", "stageName": "test", "pipelineName": "CorpSite-selenium", }Performance:{ "name": "Performance Tests", "url": "http://abc.com", "startTime": "2020-06-30T18:12:31Z", "finishTime": "2020-06-30T18:12:31Z", "duration": 78.802, "maximumVirtualUsers": "", "throughput": "", "maximumTime": "", "minimumTime": "", "averageTime": "", "ninetyPercent": "", "standardDeviation": "", // Use Artifact OR Package OR Build + Stage + PipelineName Attributes "packages": [{"name": "CorpSite-pkg1"}], "artifacts": [{"name": "CorpSite-artifact", "version": "1.0.0"}], "buildNumber": "55", "stageName": "test", "pipelineName": "CorpSite-Performance", } - Charge utile de l’aptitude de notification JSON standard attendue : outil d’artefact
- Pipelines:
{ "artifacts": [ { "name": "acm.jar", "version": "1.82", "semanticVersion": "1.82.0", "repositoryName": "acm-repo" } ], "pipelineName": "testMultiBranch/master", "taskExecutionNumber": "82", "stageName": "buildmbmaster", "branchName": "master" }Jenkins Projet Freestyle/Maven :{ "artifacts": [ { "name": "mav1.jar", "version": "1.11", "semanticVersion": "1.11.0", "repositoryName": "mav-repo" } ], "projectName": "maven-test-proj", "taskExecutionNumber": "11" }
Flux secondaire de l’aptitude de Connexion
L’aptitude Connect est prise en charge.
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : Référence.Outil DevOps Enregistrement d’outil pour lequel l’action du bouton Connecter est sélectionnée. |
Sorties Voir les sorties de flux secondaire. |
|
- Échec de la connexion
- Le flux secondaire a été exécuté avec succès, mais la connexion n’a pas pu être établie.
- Erreur : impossible d’obtenir les détails de l’échec à partir du flux de connexion spécifique à l’outil
- L’exécution du flux secondaire a échoué pour une raison inconnue.
- Erreur de mise à jour de l'état de connexion de l'outil.
- L’attribut connection_state n’a pas pu être mis à jour pour une raison inconnue.
Détecter le flux secondaire d’aptitude
L’aptitude de détection est prise en charge.
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : Référence.Outil DevOps |
Sorties Voir les sorties de flux secondaire. |
Sans pagination : Étiquette : discoverpayload Type : tableau d’objets sous forme de chaîne JSON. (JSON.stringify([{},{}])) Outil de planification sans pagination : Outil de codage sans pagination :
Outil d’orchestration sans pagination :
Avec pagination : Étiquette : discoverpayload Type : tableau d’objets sous forme de chaîne JSON. (JSON.stringify([{},{}])) Exemple de format JSON :
Outil de planification avec pagination :
Outil de codage avec pagination :
Outil d’orchestration avec pagination : |
| État | Message |
|---|---|
| Demandé | :: |
| Traitement | :: |
| Terminé | Mis à jour <numéro>objet(s) Objets <number> trouvés avec un toolId non valide Objets <number> trouvés échec de validation |
| Erreur |
|
| En pause | :: |
| Annulé | :: |
| Sans correspondance | :: |
Mettre à jour l’action de demande Studio de workflow d’importation
Vous pouvez utiliser l’action Mettre à jour la demande d’importation dans votre flux secondaire de détection pour modifier l’état de l’enregistrement de la demande d’importation, si vous le souhaitez.
| Étiquette d'entrée | Type |
|---|---|
| current | Référence.Demande d’importation |
| État | (chaîne)
|
| Détails | (chaîne) |