Integrar o Azure Pipelines com o gerenciamento de alterações do ServiceNow
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Para melhorar a colaboração entre as equipas de desenvolvimento e de TI, o Azure Pipelines suporta a integração com o ServiceNow. As equipes podem reduzir os riscos associados às alterações e seguir metodologias de gerenciamento de serviços, como ITIL (Information Technology Infrastructure Library), incluindo portas de gerenciamento de alterações em pipelines de liberação.
Neste tutorial, irá aprender a:
- Configure instâncias ServiceNow.
- Inclua o processo de gerenciamento de alterações do ServiceNow como uma porta de liberação.
- Monitore o processo de gerenciamento de alterações a partir de pipelines de liberação.
- Mantenha as solicitações de alteração do ServiceNow atualizadas com os resultados da implantação.
Pré-requisitos
- Tenha uma conta HI em uma instância não desenvolvedora do ServiceNow.
- Tenha 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 versão Classic ou um pipeline YAML implantado em um ambiente em seu projeto do Azure DevOps.
- Certifique-se de entender e seguir os procedimentos em Usar portas e aprovações para controlar sua implantação e Definir aprovações e verificações.
Configurar a instância ServiceNow
Instale a extensão Azure Pipelines em sua instância ServiceNow. Consulte Visão geral da compra para obter mais detalhes sobre a instalação de aplicativos da loja ServiceNow. Você precisa de credenciais HI para concluir a instalação.
Em 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 ServiceNow Change Management.
Em seu projeto do Azure DevOps, crie uma nova conexão de serviço 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 versão Classic ou a um pipeline YAML que implanta em um ambiente.
Adicionar o portão de pré-implantação do ServiceNow Change Management
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 Gates, selecione Adicionar ao lado de Portões de implantação e selecione o portão de pré-implantação do ServiceNow Change Management.
Definir configurações de Gerenciamento de Alterações do ServiceNow
Na tela ServiceNow Change Management settings, em ServiceNow connection, selecione a conexão de serviço ServiceNow que você criou anteriormente.
Preencha o resto do formulário da seguinte forma:
Definição Descrição Ação Selecione Criar nova solicitação de alteração ou Usar solicitação de alteração existente. Alterar tipo Selecione Normal, Padrão ou Emergência. Breve descrição Insira um resumo da alteração. Cronograma de solicitação de alteração Opcionalmente, insira o agendamento da alteração conforme honrado pelo fluxo de trabalho ServiceNow. Em Data de início planeada e Data de fim planeada, introduza data e 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 atribuição Opcionalmente, selecione o grupo ao qual a alteração está atribuída. Parâmetros avançados>de solicitação de alteração adicional Selecione as reticências ao lado do campo e, em seguida, selecione Adicionar para adicionar mais parâmetros. Os nomes devem ser nomes de campos, não rótulos, prefixados com u_
, comou_backout_plan
. Os valores devem ser válidos no ServiceNow. As entradas inválidas são ignoradas.Critérios de sucesso 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 avançados de sucesso 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, consulte 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 um 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 é o 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 Update ServiceNow Change Request.
No formulário de configurações de tarefa, em Conexão ServiceNow, selecione sua conexão de serviço ServiceNow.
Em Alterar número da solicitação, insira o número da solicitação de alteração do ServiceNow a ser atualizado.
Selecione Atualizar estado e, em seguida, em Estado atualizado do pedido de alteração, escolha ou introduza o estado a definir para o pedido de alteração.
Em Notas de Trabalho em Avançado, opcionalmente, insira todas as notas de trabalho a serem adicionadas para a atualização da solicitação de alteração.
Nota
A tarefa Update ServiceNow Change Request falhará se nenhum dos campos de solicitação de alteração for atualizado durante a execução. ServiceNow ignora campos inválidos e valores passados para a tarefa.
Criar uma versão
Selecione Criar versão para iniciar uma nova versão.
Seu pipeline deve criar uma nova 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 da alteração, selecione o ícone de status para exibir os logs do pipeline.
A solicitação de alteração é enfileirada no ServiceNow e o proprietário da alteração pode visualizá-la.
Você pode encontrar o pipeline de liberação que disparou a nova solicitação de alteração na seção de metadados do Pipeline de DevOps do Azure.
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 com êxito.
A solicitação de alteração é fechada automaticamente após a implantação.
FAQs
Quais versões do ServiceNow são suportadas?
A extensão ServiceNow do Azure Pipelines suporta as versões de Kingston, Londres, Nova Iorque, Paris, Quebeque, Roma, San Diego, Tóquio e Utah.
A extensão ServiceNow do Azure Pipelines suporta as versões de Kingston, Londres, Nova Iorque, Paris, Quebeque, San Diego, Tóquio e Utah.
A extensão ServiceNow do Azure Pipelines dá suporte às versões de Kingston, Londres, Nova York, Paris e Quebec.
Que tipos de pedido de alteração são suportados?
A integração do Azure Pipelines ServiceNow 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 de solicitação de alteração adicionais ou em otherParameters
. Use um formato JSON de pares 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 de conjunto.
Como posso ver os valores pendentes preenchidos para Categoria, Estado e outros campos?
Change Management Core e Change Management - Os plug-ins do Modelo de Estado devem estar ativos em sua instância do ServiceNow para que os menus suspensos funcionem. Para obter mais informações, consulte Atualizar gerenciamento de alterações e Atualizar estados de solicitação de alteração.
Recursos
- Configure seus pipelines de liberação para implantações seguras
- X sentimento como uma porta de liberação
- Problemas do GitHub como uma porta de liberação
- Crie portões personalizados.
- Exemplo de biblioteca ServerTaskHelper