---
sourceDocument: Zurich IT Service Management
sourceDocumentLink: https://www.servicenow.com/docs/r/pt-BR/zurich/it-service-management

 Release :

    - zurich

ft:locale :

    - pt-BR

ft:publication_title :

    - Zurich IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# Criando DevOps subfluxos

# Criando DevOps subfluxos {#ariaid-title1}

* Versão de lançamento: Zurich
* 
* Atualizado 31 de jul. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 5 min. de leitura

Para integrações criadas pelo usuário, crie um DevOps Workflow Studio subfluxo para coletar e transformar dados da ferramenta que você está integrando.

ServiceNow [Flow Designer](https://www.servicenow.com/docs/access?context=flow-designer&version=zurich&pubname=zurich-application-development&ft:locale=en-US). ServiceNow AI Platform recurso que seu desenvolvedor de integração pode usar para automatizar processos usando uma sequência de ações. As condições do gatilho iniciam o fluxo e as variáveis passam informações entre as ações.

Consulte [Flow Designer](https://www.servicenow.com/docs/access?context=flow-designer&version=zurich&pubname=zurich-application-development&ft:locale=en-US) [Subfluxos](https://www.servicenow.com/docs/access?context=subflows&version=zurich&pubname=zurich-build-workflows&ft:locale=en-US)para obter informações sobre como criar um subfluxo.

## Subfluxo de capacidade de notificação {#creating-dev-ops-subflows__section_ep4_txg_w3b}

{#creating-dev-ops-subflows__table_hbx_dn1_1kb__entry__2}

| Item | Valor esperado |
|-|-|
| Entradas | Rótulo: Atual Tipo: Evento reference.Inbound |
| Saídas | N/D |
[ ]

{#creating-dev-ops-subflows__table_hbx_dn1_1kb}

Transforme a carga original e salve a carga final em transformed_payload campo.

Carga de capacidade de notificação JSON padrão esperada - Ferramenta de planejamento
:   Nota:  
    O atributo de versão na carga JSON é opcional. Mesmo que você não forneça o atributo de versão, a carga será processada com sucesso.

        {
          "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"
        }

Carga de capacidade de notificação JSON padrão esperada - Ferramenta de codificação
:

        {
          "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"
            }
          ]
        }
         
Carga de capacidade de notificação JSON padrão esperada - Ferramenta de Orquestração
:

        {
          "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"
        }

Carga de capacidade de notificação JSON padrão esperada - Ferramenta de teste
:   Funcional:

        { 
        "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", 
        } 


    Desempenho:

        { 
        "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", 
        } 

Carga de capacidade de notificação JSON padrão esperada - ferramenta Artefato
:   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 Projeto Freestyle/Maven:

        {
          "artifacts": [
            {
              "name": "mav1.jar",
              "version": "1.11",
              "semanticVersion": "1.11.0",
              "repositoryName": "mav-repo"
            }
          ],
          "projectName": "maven-test-proj",
          "taskExecutionNumber": "11"
        }

Figura 1. DevOps Exemplo de diagrama de fluxo de capacidade de notificação - Ferramenta de codificação

## Subfluxo de capacidade do Connect {#creating-dev-ops-subflows__section_tkj_jzf_1kb}

O recurso Connect é compatível.  
{#creating-dev-ops-subflows__table_xys_nm1_1kb__entry__2}

| Item | Valor esperado |
|-|-|
| Entradas | Rótulo: Atual Tipo: Ferramenta Referência.DevOps Registro da ferramenta para o qual Conecte a ação do botão foi clicada. |
| Saídas Consulte [saídas de subfluxo](https://www.servicenow.com/docs/access?context=subflows&version=zurich&pubname=zurich-build-workflows&ft:locale=en-US). | * Rótulo: ConectadoSinalizador que indica o sucesso ou a falha da conexão feita com a ferramenta de destino (verdadeiro/falso). * Rótulo: errormessageMensagem de cadeia de caracteres exibida no formulário para falha de conexão. Se a conexão for bem-sucedida, a variável será uma cadeia de caracteres vazia. {#creating-dev-ops-subflows__ul_v5t_sm1_1kb} |
[ ]

{#creating-dev-ops-subflows__table_xys_nm1_1kb}  
Erros de conexão mostrados no DevOps formulário de ferramenta:

Falha na conexão
:   O subfluxo foi executado com sucesso, mas não foi possível estabelecer a conexão.

Erro: Falha ao obter detalhes da falha do fluxo de conexão específico da ferramenta
:   Falha na execução do subfluxo por um motivo desconhecido.

Erro ao atualizar o status de conexão da ferramenta
: Não foi possível atualizar o atributo connection_state por um motivo desconhecido.  
Figura 2. DevOps Exemplo de diagrama de fluxo de capacidade do Connect - Ferramenta de Orquestração

## Descobrir subfluxo de capacidade {#creating-dev-ops-subflows__section_sgn_lzf_1kb}

O recurso Descoberta é compatível.  
{#creating-dev-ops-subflows__table_acq_yj1_1kb__entry__2}

| Item | Valor esperado |
|-|-|
| Entradas | Rótulo: Atual Tipo: Ferramenta Referência.DevOps |
| Saídas Consulte [saídas de subfluxo](https://www.servicenow.com/docs/access?context=subflows&version=zurich&pubname=zurich-build-workflows&ft:locale=en-US). | Sem paginação: Rótulo: Carga de descoberta Tipo: Matriz de objetos como cadeia de caracteres JSON. <kbd class="ph userinput">(JSON.stringify([[], []]))</kbd> Ferramenta de planejamento sem paginação: [ { "id":"REL1234567", "name": "REL NUMBERS", "url":"https://jira.com/vult/browse/REL1234567", "nativeId": "1790e6cc-085b-4529-9cb8-47f393182226" }, { "id":"TOR67", "name": "TOR 67", "url":"https://jira.com/welp/browse/TOR67", "nativeId": "482ce864-085b-4529-9cb8-47f393767eb2" } ] Ferramenta de codificação sem paginação: [ { "name": "nvm_repo", "url": "https://github.com/nvm_repo/" }, { "name": "golang_util", "url": "https://github.com/golang_util/" } ]; Ferramenta de Orquestração sem paginação: { "orchestrationTasks": [ { "name": "Build_APC_1", "url": "https://jenkins.wsf.xyz/job/Build_APC_1", "projectName": "Build_APC_1" }, { "name": "CI_CD_Jenkins", "url": "https://pt1.jenkins.com/job/CI_CD_Jenkins", "projectName": "CI_CD_Jenkins" }, { "name": "CI_deploy", "url": "https://pt2.jenkins.com/job/CI_deploy", "projectName": "CI_deploy" } ], "pipelines": [ { "name": "Build_APC_1", "url": "https://jenkins.wsf.xyz/job/Build_APC_1", "projectName": "Build_APC_1" }, { "name": "CI_CD_Jenkins", "url": "https://pt1.jenkins.com/job/CI_CD_Jenkins", "projectName": "CI_CD_Jenkins" }, { "name": "CI_deploy", "url": "https://pt2.jenkins.com/job/CI_deploy", "projectName": "CI_deploy" } ] } Com paginação: Rótulo: Carga de descoberta Tipo: Matriz de objetos como cadeia de caracteres JSON. <kbd class="ph userinput">(JSON.stringify([[], []]))</kbd> Formato JSON de amostra: "pageInfo" : { "isLastPage" : true, "discoverPayload" : {}, "pageDetails" : {} } Ferramenta de planejamento com paginação: { "pageInfo": { "isLastPage": false, "discoverPayload": [ { "id":"REL1234567", "name": "REL NUMBERS", "url":"https://jira.com/vult/browse/REL1234567", "nativeId": "1790e6cc-085b-4529-9cb8-47f393182226" }, { "id":"TOR67", "name": "TOR 67", "url":"https://jira.com/welp/browse/TOR67", "nativeId": "482ce864-085b-4529-9cb8-47f393767eb2" } ], "pageDetails": { "curPage" : 1, "nextPage": 2 } } } Ferramenta de codificação com paginação: { "pageInfo": { "isLastPage": false, "discoverPayload": [ { "name": "nvm_repo", "url": "https://github.com/nvm_repo/" }, { "name": "golang_util", "url": "https://github.com/golang_util/" } ], "pageDetails": { "curPage" : 1, "nextPage": 2 } } } Ferramenta de Orquestração com paginação: { "pageInfo": { "isLastPage": false, "discoverPayload": { "orchestrationTasks": [ { "name": "Build_APC_1", "url": "https://jenkins.wsf.xyz/job/Build_APC_1", "projectName": "Build_APC_1" }, { "name": "CI_CD_Jenkins", "url": "https://pt1.jenkins.com/job/CI_CD_Jenkins", "projectName": "CI_CD_Jenkins" } ], "pipelines": [ { "name": "Build_APC_1", "url": "https://jenkins.wsf.xyz/job/Build_APC_1", "projectName": "Build_APC_1" } ] }, "pageDetails": { "curPage" : 1, "nextPage": 2 } } } |
[ ]

{#creating-dev-ops-subflows__table_acq_yj1_1kb}  
O fluxo principal do Discover é acionado durante a criação do registro de solicitação de importação. Uma solicitação de importação tem estes estados e mensagens.{#creating-dev-ops-subflows__table_pjc_x5t_jkb__entry__2}

| Estado | Mensagem |
|-|-|
| Solicitado(a) | -- |
| Processando | -- |
| Concluído | Objeto(s) do \<number\> atualizado(s) Objetos \<number\> encontrados com toolId inválido Falha na validação de objetos \<number\> encontrados |
| Erro | * Não é possível analisar a cadeia de caracteres de carga do subfluxo * a carga de descoberta deve ser uma matriz de objetos * O registro ImportRequest não tem referência à tabela de ferramentas {#creating-dev-ops-subflows__ul_tf3_vvt_jkb} |
| Pausados | -- |
| Cancelado | -- |
| Incompatíveis | -- |
[ ]

{#creating-dev-ops-subflows__table_pjc_x5t_jkb}  
Figura 3. DevOps Exemplo de diagrama de fluxo de capacidade de descoberta - Ferramenta de planejamento  
Figura 4. DevOps Descobrir capacidade com diagrama de fluxo de suporte a paginação

## Atualizar solicitação de importação Workflow Studio ação {#creating-dev-ops-subflows__section_tns_mzf_1kb}

Você pode usar a ação Atualizar solicitação de importação no subfluxo Descobrir para modificar o estado do registro Solicitação de importação, se desejado.  
{#creating-dev-ops-subflows__table_ncn_xs1_1kb__entry__2}

| Rótulo de entrada | Tipo |
|-|-|
| atual | Solicitação de referência.importação |
| estado | (Cadeia de caracteres) * solicitado * processando Nota: A execução do fluxo é interrompida (depois que o retorno é recebido do subfluxo) quando o estado é definido como Processando. * concluído * erro * pausado * cancelado(a) * incompatível {#creating-dev-ops-subflows__ul_kbx_yt1_1kb} |
| detalhes | (Cadeia de caracteres) |
[ ]

{#creating-dev-ops-subflows__table_ncn_xs1_1kb}

