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 de l’outil que vous intégrez.
ServiceNow Flow Designer est une Now 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 des informations entre les actions.
Pour en savoir plus sur la création d’un flux secondaire, consultez Flow Designer Flux secondaires.
Flux secondaire d’aptitude de notification
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : Reference.É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 attendue de l’aptitude de notification JSON standard : outil de planification
- Remarque :L’attribut de version de 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" } - Charge utile attendue de l’aptitude de notification JSON standard : 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" } ] }- JSON standard attendu Charge utile de l’aptitude de notification : 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" }
Connecter le flux secondaire d’aptitude
L’option Connexion est prise en charge.
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : outil Référence.DevOps Enregistrement d’outil pour lequel l’action du bouton Connecter est sélectionnée. |
Sorties |
|
- É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’option de détection est prise en charge.
| Élément | Valeur attendue |
|---|---|
| Entrées | Étiquette : actuelle Type : outil Référence.DevOps |
Sorties |
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é | -- |
| En cours de traitement | -- |
| Terminé | Mis à jour <numéro> objet(s) Objets <number> trouvés avec toolId non valide Échec de la validation des objets <nombre> trouvés |
| 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 | Demande d’importation Reference.Reference |
| État | (Chaîne)
|
| Détails | (Chaîne) |