Integrar o Azure Pipelines ao gerenciamento de alterações do ServiceNow
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Para melhorar a colaboração entre as equipes de desenvolvimento e TI, o Azure Pipelines dá suporte à integração com o ServiceNow. As equipes podem reduzir os riscos associados às alterações e seguir metodologias de gerenciamento de serviços, como a ITIL (Information Technology Infrastructure Library), incluindo portões de gerenciamento de alterações nos pipelines de lançamento.
Neste tutorial, você aprenderá a:
- Configurar instâncias do ServiceNow.
- Inclua o processo de gerenciamento de alterações do ServiceNow como um portão de lançamento.
- Monitore o processo de gerenciamento de alterações dos pipelines de lançamento.
- Manter as solicitações de alteração do ServiceNow atualizadas com os resultados da implantação.
Pré-requisitos
- Ter uma conta HI em uma instância não desenvolvedora do ServiceNow.
- Ter uma organização e um projeto do Azure DevOps com permissões no nível da organização para instalar extensões.
- Tenha um pipeline de lançamento clássico ou um pipeline YAML implantado em um ambiente em seu projeto do Azure DevOps.
- Certifique-se de entender e seguir os procedimentos em Usar portões e aprovações para controlar sua implantação e Definir aprovações e verificações.
Configurar a instância do ServiceNow
Instale a extensão do Azure Pipelines na sua instância do ServiceNow. Confira Visão geral de compra para obter mais detalhes sobre como instalar aplicativos pela loja do ServiceNow. Você precisa de credenciais HI para concluir a instalação.
No ServiceNow, crie um novo usuário para a Conta de Serviço do Azure Pipelines e conceda a ele a função x_mioms_azpipeline.pipelinesExecution .
Configurar a organização e o projeto do Azure DevOps
Em sua organização do Azure DevOps, instale a extensão de Gerenciamento de Alterações do ServiceNow.
Em seu projeto do Azure DevOps, crie uma nova conexão de serviço do ServiceNow usando a autenticação básica ou a autenticação OAuth2. Para obter mais informações, consulte Criar uma conexão de serviço.
Configurar o pipeline
Você pode adicionar a integração do ServiceNow a um pipeline de lançamento clássico ou a um pipeline YAML implantado em um ambiente.
Adicionar o portão de pré-implantação do Gerenciamento de Alterações do ServiceNow
No pipeline de lançamento do Azure Pipelines, selecione o ícone Condições de pré-implantação .
Na tela Condições de pré-implantação, expanda e habilite Portões, selecione Adicionar ao lado de Portões de implantação e selecione o portão de pré-implantação do Gerenciamento de Alterações do ServiceNow.
Definir as configurações de Gerenciamento de Alterações do ServiceNow
Na tela Configurações do Gerenciamento de Alterações do ServiceNow, em Conexão do ServiceNow, selecione a conexão de serviço do ServiceNow que você criou anteriormente.
Preencha o restante do formulário da seguinte maneira:
Configuração Descrição Ação Selecione Criar nova solicitação de alteração ou Usar solicitação de alteração existente. Tipo de alteração Selecione Normal, Padrão ou Emergência. Descrição breve Insira um resumo da alteração. Cronograma de solicitação de mudança Opcionalmente, insira o agendamento da alteração conforme respeitado pelo fluxo de trabalho do ServiceNow. Em Data de início planejada e Data de término planejada, insira a data e a hora UTC no formato aaaa-MM-ddTHH:mm:ssZ. Descrição Opcionalmente, insira uma descrição detalhada da alteração. Categoria Opcionalmente, selecione a categoria da alteração, como Hardware, Rede ou Software. Prioridade Opcionalmente, selecione a prioridade da alteração. Risco Opcionalmente, selecione o nível de risco para a alteração. Impacto Opcionalmente, selecione o efeito que a alteração tem nos negócios. Item de configuração Opcionalmente, selecione o item de configuração ao qual a alteração se aplica. Grupo de tarefas Opcionalmente, selecione o grupo ao qual a alteração é atribuída. Parâmetros adicionais avançados>de solicitação de alteração Selecione as reticências ao lado do campo e, em seguida, selecione Adicionar para adicionar mais parâmetros. Os nomes devem ser nomes de campo, não rótulos, prefixados com u_
, comou_backout_plan
. Os valores devem ser válidos no ServiceNow. Entradas inválidas são ignoradas.Critérios de êxito Selecione Estado desejado da solicitação de alteração ou Critérios de sucesso avançados. Estado desejado da solicitação de alteração Selecione o valor de status da solicitação de alteração necessário para que o portão seja bem-sucedido e o pipeline continue. Critérios de sucesso avançados Insira uma expressão que controle quando o portão deve ser bem-sucedido. A solicitação de alteração é definida como root['result']
na resposta do ServiceNow. Por exemplo,and(eq(root['result'].state, 'New'),eq(root['result'].risk, 'Low'))
. Para obter mais informações, confira Expressões.Nome de referência das variáveis>de saída Para poder usar variáveis de saída em seu fluxo de trabalho de implantação, especifique um nome de referência. Você pode acessar variáveis de porta usando PREDEPLOYGATE
como prefixo em um trabalho sem agente. Por exemplo, quando o nome de referência é definido como gate1, você pode obter o número da solicitação de alteração usando a variável$(PREDEPLOYGATE.gate1.CHANGE_REQUEST_NUMBER)
.Lista de variáveis CHANGE_REQUEST_NUMBER é o número da solicitação de alteração.
CHANGE_SYSTEM_ID é a ID do sistema da solicitação de alteração.
Atualizar o pipeline
No final do pipeline de lançamento, adicione um trabalho sem agente com a tarefa Atualizar Solicitação de Alteração do ServiceNow.
No formulário de configurações de tarefa, em Conexão do ServiceNow, selecione sua conexão de serviço do ServiceNow.
Em Número da solicitação de alteração, insira o número da solicitação de alteração do ServiceNow a ser atualizado.
Selecione Atualizar status e, em seguida, em Status atualizado da solicitação de alteração, escolha ou insira o status a ser definido para a solicitação de alteração.
Em Notas de Serviço, em Avançado, opcionalmente, insira as notas de serviço a serem adicionadas para a atualização da solicitação de alteração.
Observação
A tarefa Atualizar Solicitação de Alteração do ServiceNow falhará se nenhum dos campos de solicitação de alteração for atualizado durante a execução. O ServiceNow ignora campos e valores inválidos passados para a tarefa.
Criar uma versão
Selecione Criar versão para iniciar uma nova versão.
Seu pipeline deve criar uma solicitação de alteração no ServiceNow como parte das condições de pré-implantação criadas anteriormente.
O pipeline aguarda que todos os portões sejam bem-sucedidos dentro do mesmo intervalo de amostragem. Para verificar o número de alteração, selecione o ícone status para exibir os logs do pipeline.
A solicitação de alteração é enfileirada no ServiceNow e o proprietário da alteração pode exibi-la.
Você pode encontrar o pipeline de lançamento que disparou a nova solicitação de alteração na seção de metadados do Azure DevOps Pipeline.
Quando a alteração estiver pronta para implementação e movida para o estado Implementar , o pipeline retomará a execução e o status do portão deverá retornar bem-sucedido.
A solicitação de alteração é fechada automaticamente após a implantação.
Perguntas Frequentes
Quais versões do ServiceNow são compatíveis?
A extensão do ServiceNow do Azure Pipelines dá suporte às versões Kingston, Londres, Nova York, Paris, Quebec, Roma, San Diego, Tóquio e Utah.
A extensão do ServiceNow do Azure Pipelines dá suporte às versões Kingston, Londres, Nova York, Paris, Quebec, San Diego, Tóquio e Utah.
A extensão do ServiceNow do Azure Pipelines dá suporte às versões Kingston, Londres, Nova York, Paris e Quebec.
Que tipos de solicitação de alteração são suportados?
A integração do ServiceNow do Azure Pipelines dá suporte a solicitações de alteração normais, padrão e de emergência.
Como faço para definir outras propriedades de alteração?
Você pode especificar mais propriedades de alteração no campo Parâmetros adicionais de solicitação de alteração ou em otherParameters
. Use um formato JSON de pares de chave-valor, com o nome sendo o nome do campo, não o rótulo, prefixado com u_
.
Posso atualizar campos personalizados na solicitação de alteração com mais parâmetros de solicitação de alteração?
Se você definir campos personalizados na solicitação de alteração, deverá adicionar mapeamento para campos personalizados em Importar mapa de transformação do conjunto.
Como posso ver os valores suspensos preenchidos para Categoria, Status e outros campos?
Os plug-ins Change Management Core e Change Management - State Model devem estar ativos em sua instância do ServiceNow para que os menus suspensos funcionem. Para obter mais informações, consulte Gerenciamento de alterações de atualização e Atualizar estados de solicitação de alteração.
Recursos
- Configurar seus pipelines de lançamento para implantações seguras
- Sentimento X como um portão de lançamento
- Problemas do GitHub como um gate de lançamento
- Criar gates personalizados.
- Exemplo da Biblioteca ServerTaskHelper