---
sourceDocument: Xanadu IT Service Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/it-service-management

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Xanadu IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

# GitHub ações de pipeline

# GitHub ações de pipeline {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 5 min. de leitura

Use essas ações no pipeline GitHub para interagir com o modelo de dados Configuração de DevOps.  
Importante:  
A partir da versão Washington DC, o Configuração de DevOps está sendo preparado para descontinuação futura. Ele ficará oculto e não será mais instalado em novas instâncias, mas continuará sendo compatível. Para obter detalhes, consulte o artigo [Deprecation Process (Processo de descontinuação) \[KB0867184\]](https://support.servicenow.com/kb_view.do?sysparm_article=KB0867184) na Base de conhecimento do Now Support.

GitHub pipelines com script e declarativos são compatíveis.

As ações ServiceNow DevOps Config Validate (servicenow-devops-config-validate) e DevOps Config Export (servicenow-devops-config-export) GitHub são fornecidas para criar uma definição de pipeline específica.

## Validação de configuração de DevOps (servicenow-devops-config-validate) {#devops-config-github-integration__section_rsc_wdj_psb}

Carregue e valide dados de configuração em uma instância ServiceNow.

Argumentos de entrada
:   {#devops-config-github-integration__table_k3q_bf4_tzb__entry__2}

    | Argumento | Descrição |
    |-|-|
    | URL da instância | ServiceNow URL da instância. |
    | devops-integration-username | Configuração de DevOps nome de usuário de integração. |
    | devops-integration-user-password | Configuração de DevOps senha do usuário de integração. |
    | application-name | Configuração de DevOps nome da aplicação. |
    | meta | Destino do modelo de dados em que os arquivos de configuração são carregados. Exemplos de metas de modelo de dados são: * `componente` * `collection` * `implantável` {#devops-config-github-integration__ul_yrv_h34_tzb} |
    | implantável-nome | Nome do implantável no modelo de dados Configuração de DevOps. |
    | nome-da-coleção | (Opcional) Nome da coleção no modelo de dados. Obrigatório quando o destino é uma coleção. |
    | nome-caminho | (Opcional) Caminho do nome do nó no modelo de dados em que os arquivos de configuração são carregados. |
    | config-file-path | Caminho de arquivo ao carregar um único arquivo ou padrão de caminho de arquivo com base no padrão de estilo Ant ao carregar vários arquivos para o modelo de dados. Consulte [Tarefas baseadas em diretório](https://ant.apache.org/manual/dirtasks.html) para obter informações sobre padrões de estilo Ant na documentação do manual Apache Ant.1.10.14. |
    | formato de dados | Formato de dados dos arquivos de configuração. Exemplos de formatos de dados são: * `CSV` * `INI` * `JSON` * `Propriedades` * `BRUTO` * `XML` * `YAML` {#devops-config-github-integration__ul_vpc_rg4_tzb} |
    | atributo-formato-dados | (Opcional) Atributos de formato de dados estendidos para analisar dados de configuração. |
    | confirmação automática | Entrada booliana (verdadeira ou falsa) para confirmar dados de configuração após o carregamento bem-sucedido. Valor padrão: `verdadeiro` |
    | validação automática | Entrada booliana (verdadeira ou falsa) para validar dados de configuração após uma confirmação bem-sucedida. Valor padrão: `verdadeiro` |
    | publicação automática | Entrada booliana (verdadeira ou falsa) para publicar dados de configuração após a validação bem-sucedida. Valor padrão: `verdadeiro` |
    | changeset | (Opcional) Abra o changeset associado à ação de upload. Se não for fornecido, um novo changeset será criado. |
    | snapshot-validação-tempo limite | (Opcional) Tempo máximo em minutos para a validação ser concluída antes de ocorrer falha na ação. Valor padrão: `60` |
    | terminar-em-falhas-de-validação-de-política | (Opcional) Entrada booliana (verdadeira ou falsa) para encerrar o fluxo de trabalho GitHub após falhas de validação de política. Valor padrão: `falso` |
    [ ]

    {#devops-config-github-integration__table_k3q_bf4_tzb}

Saídas
:

    changeset-number

    :   Número do changeset associado à ação de upload.

    snapshot-name

    :   Nome do snapshot mais recente do implantável.

    validação-status

    :   Status de validação do snapshot. Exemplo: `passou`, `passou_com_exceção`, `falhou`, `execution_error`, `not_validated`

    resultados-de-validação

    :   A validação resulta no formato JSON para o snapshot.

Exemplo --- Carregando arquivos de configuração para um implantável{#devops-config-github-integration__example-snapshot}
:

        upload_and_validate_job:
            name: Upload and validate
            needs: <upstream job>
            runs-on: ubuntu-latest
            steps:     
              - name: ServiceNow Devops Config Validate
                uses: ServiceNow/servicenow-devops-config-validate@v1.0.0-beta
                with:
                  instance-url: ${{ secrets.SN_INSTANCE_URL }}
                  devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                  devops-integration-user-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                  application-name: PaymentDemo
                  target: deployable
                  deployable-name: Production
                  name-path: web-api-v1.0
                  auto-commit: true
                  auto-validate: true
                  auto-publish: true
                  config-file-path: data/k8s/helm/*.yml
                  data-format: yaml
                  snapshot-validation-timeout: 60
                  terminate-on-policy-validation-failures: true

Exemplo --- Carregamento de arquivos de configuração para uma coleção
:

        upload_and_validate_job:
            name: Upload and validate
            needs: <upstream job>
            runs-on: ubuntu-latest
            steps:     
              - name: ServiceNow Devops Config Validate
                uses: ServiceNow/servicenow-devops-config-validate@v1.0.0-beta
                with:
                  instance-url: ${{ secrets.SN_INSTANCE_URL }}
                  devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                  devops-integration-user-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                  application-name: PaymentDemo
                  target: collection
                  deployable-name: Production
                  collection-name: release-1.0
                  name-path: web-api-v1.0
                  auto-commit: true
                  auto-validate: true
                  auto-publish: true
                  config-file-path: data/k8s/helm/*.yml
                  data-format: yaml
                  snapshot-validation-timeout: 60
                  terminate-on-policy-validation-failures: true

Exemplo --- Carregando arquivos de configuração para um componente
:

        upload_and_validate_job:
            name: Upload and validate
            needs: <upstream job>
            runs-on: ubuntu-latest
            steps:     
              - name: ServiceNow Devops Config Validate
                uses: ServiceNow/servicenow-devops-config-validate@v1.0.0-beta
                with:
                  instance-url: ${{ secrets.SN_INSTANCE_URL }}
                  devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                  devops-integration-user-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                  application-name: PaymentDemo
                  target: component
                  deployable-name: Production
                  name-path: web-api-v1.0
                  auto-commit: true
                  auto-validate: true
                  auto-publish: true
                  config-file-path: data/k8s/helm/*.yml
                  data-format: yaml
                  snapshot-validation-timeout: 60
                  terminate-on-policy-validation-failures: true

Exemplo --- Carregamento de vários arquivos de configuração em uma única confirmação
:

        upload_and_validate_job:
            name: Upload and validate
            
            needs: <upstream job>
            runs-on: ubuntu-latest
            # Upload an XML file to a component
            steps:     
              - name: ServiceNow Devops Config Validate
                id: upload_and_validate_xml
                uses: ServiceNow/servicenow-devops-config-validate@v1.0.0-beta
                with:
                  instance-url: ${{ secrets.SN_INSTANCE_URL }}
                  devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                  devops-integration-user-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                  application-name: PaymentDemo
                  target: component
                  deployable-name: Production
                  name-path: web-api-v1.0
                  auto-commit: false
                  auto-validate: true
                  auto-publish: true
                  config-file-path: data/infra/v1/*.xml
                  data-format: xml
                  snapshot-validation-timeout: 60
                  terminate-on-policy-validation-failures: true

            # Upload a JSON file to the vars folder of a deployable
            steps:     
              - name: ServiceNow Devops Config Validate
                id: upload_and_validate_json
                uses: ServiceNow/servicenow-devops-config-validate@v1.0.0-beta
                with:
                  instance-url: ${{ secrets.SN_INSTANCE_URL }}
                  devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                  devops-integration-user-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                  application-name: PaymentDemo
                  target: component
                  deployable-name: Production
                  name-path: web-api-v1.0
                  auto-commit: true
                  auto-validate: true
                  auto-publish: true
                  config-file-path: data/infra/prod/*.json
                  data-format: json
                  snapshot-validation-timeout: 60
                  terminate-on-policy-validation-failures: true
                  changeset : ${{ steps.upload_and_validate_xml.outputs.changeset-number }}

## Exportação de configuração de DevOps (servicenow-devops-config-export) {#devops-config-github-integration__section_ynh_3nq_11c}

Exporte dados de configuração usando ServiceNow Configuração de DevOps.

Argumentos de entrada
:   {#devops-config-github-integration__table_znh_3nq_11c__entry__2}

    | Argumento | Descrição |
    |-|-|
    | URL da instância | ServiceNow URL da instância. |
    | devops-integration-username | Configuração de DevOps nome de usuário de integração. |
    | devops-integration-user-password | Configuração de DevOps senha do usuário de integração. |
    | application-name | Configuração de DevOps nome da aplicação. |
    | implantável-nome | Nome do implantável no modelo de dados Configuração de DevOps. |
    | nome-do-exportador | Nome do exportador que exporta dados de configuração do modelo de dados Configuração de DevOps. |
    | snapshot-name | (Opcional) Snapshot do qual os dados serão exportados. Se um snapshot não for especificado, o snapshot mais recente do implantável será usado. |
    | formato-dados-exportador | (Opcional) Formate para exportar os dados do snapshot. Exemplos de formatos de dados são: * `CSV` * `INI` * `JSON` * `Propriedades` * `BRUTO` * `XML` * `YAML` {#devops-config-github-integration__ul_srz_khv_11c} |
    | argumentos-exportador | (Opcional) Argumentos a serem usados junto com o exportador. O valor deve ser um objeto JSON representado como uma cadeia de caracteres. |
    [ ]

    {#devops-config-github-integration__table_znh_3nq_11c}

Saída
:

    conteúdo-exportador

    :   Dados de configuração que o exportador exporta.

Exemplo --- Exportar snapshot específico
:

        export:
            name: Export config
            needs: <upstream job>
            runs-on: ubuntu-latest
            steps:
            - name: ServiceNow DevOps Config Export
              uses: ServiceNow/servicenow-devops-config-export@v1.0.0-beta
              with:
                instance-url: ${{ secrets.SN_INSTANCE_URL }}
                devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                devops-integration-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                application-name: PaymentDemo
                deployable-name: Production
                exporter-name: returnDataforNodeName-now
                snapshot-name: Production-v1.dpl
                exporter-arguments: '{ "nodeName": "node1" }'

Exemplo --- Exporte o snapshot implantado mais recente com parâmetros adicionais
:

        export:
            name: Export config
            needs: <upstream job>
            runs-on: ubuntu-latest
            steps:
            - name: ServiceNow DevOps Config Export
              uses: ServiceNow/servicenow-devops-config-export@v1.0.0-beta
              with:
                instance-url: ${{ secrets.SN_INSTANCE_URL }}
                devops-integration-username: ${{ secrets.SN_DEVOPS_CONFIG_USERNAME }}
                devops-integration-password: ${{ secrets.SN_DEVOPS_CONFIG_PASSWORD }}
                application-name: PaymentDemo
                deployable-name: Production
                exporter-name: returnDataforNodeName-now
                exporter-arguments: '{ "nodeName": "node1" }'
                exporter-data-format: XML


