Acelerar seu DevOps processo de mudança
Habilite o recurso de aceleração de mudança de Velocidade de mudança para DevOps para a criação automática de solicitação de mudança em seu pipeline e use fluxos e políticas de aprovação de mudança para automatizar a aprovação sob determinadas condições.
Você pode exibir detalhes das solicitações de mudança ativas navegando até .
Processo de controle de mudanças
Quando o controle de mudanças está habilitado para um trabalho em seu DevOps Pipeline de desenvolvimento, uma solicitação de mudança é criada automaticamente e definida para avaliar o estado para solicitar aprovação para a execução da fase ou trabalho atual se um grupo de atribuição for adicionado à solicitação de mudança. As solicitações de mudança podem ser aprovadas automaticamente configurando condições em uma política de aprovação de mudança.
As etapas do pipeline podem ser configuradas para habilitar recibos de mudança, que não pausam o pipeline. As solicitações de mudança criadas com os recibos de mudança habilitados incluem todos os dados do pipeline, mas não exigem aprovação para prosseguir no pipeline e a solicitação de mudança estará nos estados pós-implementação. Para solicitações de mudança criadas sem habilitar o recebimento de mudança, o pipeline será pausado até que a solicitação de mudança seja aprovada e, após a aprovação, o pipeline será retomado.
Se você quiser interromper a transição automática dos estados da solicitação de mudança mesmo quando o recibo de mudança estiver ativado, será preciso desabilitar a propriedade sn_devops.enable_change_receipt_state_transition. Para obter mais informações, consulte Propriedades de Velocidade de mudança para DevOps.
Uma vez aprovadas, automática ou manualmente, as solicitações de mudança são movidas para o estado Implementar e o trabalho é executado. Depois que o trabalho é executado, a solicitação de mudança é movida para encerrado estado com o código de fechamento como Bem-sucedido em uma execução de trabalho bem-sucedida ou malsucedida em caso de erro na execução do trabalho. Para obter informações sobre como personalizar os estados da solicitação de mudança, consulte Processo de solicitação de mudança personalizada .
Se uma solicitação de mudança não for aprovada e movida para o estado Cancelado ou Encerrado, o associado Jenkins, O trabalho do GitHub ou ADO está marcado como com falha e uma mensagem do console é mostrada:
Para Jenkins: [ServiceNow DevOps] O trabalho não foi aprovado para execução
Para GitHub: Erro: ! ** A mudança foi criada, mas a mudança foi rejeitada ou cancelada
Para ADO: "ChangeState":"Encerrado"
Aprovação automática de solicitações de mudança usando fluxos e políticas
Você pode automatizar o processo de aprovação de mudança para todas as suas solicitações de mudança do DevOps. DevOps Change Velocity usa fluxos e dados de DevOps (como itens de trabalho, confirmações, cobertura de código, segurança de código, risco, e resultados de testes) para atualizar o estado de uma solicitação de mudança e aprová-lo automaticamente com base nas políticas de aprovação de mudança. Três fluxos estão disponíveis no sistema de base que você pode clonar, personalizar e ativar (no Flow Designer). Por padrão, o Fluxo de aprovação manual da solicitação de mudança do DevOps está ativado. Os fluxos do DevOps são aplicáveis somente a solicitações de mudança criadas automaticamente ou solicitações de mudança que tenham o recebimento de mudança desativado.
Fluxos
Um fluxo é um processo automatizado que consiste em um gatilho (que especifica quando executar o fluxo) e uma sequência de ações reutilizáveis (em que as ações executam uma sequência de operações em seus dados). Os fluxos são criados no Flow Designer, A. ServiceNow AI Platform recurso que permite a automação de processos. Para obter mais informações, consulte Flow Designer.
Você pode usar um dos fluxos de DevOps disponíveis no sistema de base como um modelo; clonar o fluxo e personalizá-lo de acordo com os requisitos de negócios. Certifique-se de que somente um fluxo de DevOps esteja no estado ativo a qualquer momento para evitar conflitos e erros. Um fluxo de DevOps é aplicável a solicitações de mudança que têm a categoria DevOps ou se a propriedade devops_change estiver definida como verdadeira. (Uma solicitação de mudança do DevOps criada automaticamente define a categoria como DevOps por padrão).
- Se a solicitação de mudança do DevOps for aprovada, o fluxo atualizará o estado de execução da etapa para Aprovado e o estado da solicitação de mudança será atualizado para Implementar. Depois disso, o pipeline será retomado.
- Se a solicitação de mudança do DevOps for rejeitada, o fluxo atualizará o estado de execução da etapa para Rejeitado e o estado da solicitação de mudança será atualizado para novo. Depois disso, o pipeline será encerrado.
- Se a solicitação de mudança do DevOps for cancelada, o fluxo atualizará o estado de execução da etapa para Cancelado pelo usuário e a solicitação de mudança será atualizada para Cancelada. Depois disso, o pipeline será cancelado.
Se uma regra de negócios ou política de dados causar um erro ao atualizar uma mudança no Fluxo de aprovação manual da solicitação de mudança de DevOps, no Fluxo de aprovação de automação mínima da solicitação de mudança de DevOps ou no Fluxo de aprovação de automação avançada da solicitação de mudança de DevOps, o erro correspondente será exibido nas anotações de trabalho da solicitação de mudança e registrado nos logs do console da ferramenta de pipeline.
| Fluxo de DevOps | Comportamento padrão |
|---|---|
| Fluxo de aprovação manual da solicitação de mudança do DevOps | Este fluxo é ativado por padrão. Com esse fluxo, as solicitações de mudança do DevOps devem passar por um processo de aprovação manual, em que o fluxo aguarda até que a solicitação de mudança atinja um estado qualificado (rejeitado, implementado ou estado de implementação específico). Quando atingido, este fluxo atualizará o estado da execução da etapa com base no estado da solicitação de mudança. Se a solicitação de mudança for baseada em tipo, o fluxo aguardará até que a mudança seja rejeitada, implementada ou cancelada. Se a solicitação de mudança for baseada em modelo, o fluxo aguardará até que a mudança seja rejeitada, cancelada ou atinja um dos estados de implementação definidos no modelo ou no estado de implementação especificado na propriedade DevOps. Este fluxo não será acionado para solicitações de mudança de DevOps cujo modelo é um modelo de mudança de DevOps do sistema de base (DevOps ou DevOps simplificado) para evitar conflitos e erros. Você pode clonar este fluxo e personalizá-lo para fazer mudanças. Certifique-se de que os outros fluxos de DevOps estejam desativados. |
| Fluxo mínimo de aprovação de automação da solicitação de mudança do DevOps | Este fluxo coleta dados de DevOps e executa a Política de automação mínima de solicitação de mudança de DevOps, que determina se a mudança deve ser rejeitada automaticamente, aprovada automaticamente ou enviada para aprovação manual. Este fluxo é acionado para solicitações de mudança do DevOps cujo tipo ou modelo está definido como Normal. Ative este fluxo se quiser automatizar as aprovações de solicitação de mudança, mas começar minimamente. Você pode clonar este fluxo e personalizá-lo para fazer mudanças. Certifique-se de que os outros fluxos de DevOps estejam desativados. Você também pode adicionar a ação DevOps - Atualizar motivo de decisão da política de automação mínima a este fluxo para atualizar as decisões de política para o comentário de mudança de execução da etapa e as anotações de trabalho da solicitação de mudança para saber os motivos da decisão. Você pode adicionar esta ação em cada bloco de decisão e especificar a entrada necessária. |
| Fluxo de aprovação de automação avançada de solicitação de mudança do DevOps | Este fluxo coleta dados de DevOps e executa a Política de automação avançada de solicitação de mudança de DevOps, que determina se a mudança deve ser rejeitada automaticamente, aprovada automaticamente ou enviada para aprovação manual. Este fluxo é acionado para solicitações de mudança do DevOps cujo tipo ou modelo está definido como Normal. Se a solicitação de mudança do DevOps for aprovada, o fluxo atualizará a solicitação de mudança para o estado programado e a data de início planejada será usada para definir a data de início da solicitação de mudança. Na data de início da solicitação de mudança, o fluxo atualizará o estado da solicitação de mudança para Implementar. Depois disso, o pipeline será retomado. Ative este fluxo se quiser automatizar as aprovações de solicitação de mudança com uma política de mudança robusta. Você pode clonar este fluxo e personalizá-lo para fazer mudanças. Certifique-se de que os outros fluxos de DevOps estejam desativados. |
| Fluxo de automação de mudanças de demonstração do DevOps | Quando os dados de demonstração são instalados, o fluxo de Automação de mudança de demonstração do DevOps fica disponível onde o tipo normal de solicitação de mudança ou solicitação de mudança de modelo normal pode ser aprovado automaticamente com base nas políticas de decisão. Como parte dos dados de demonstração, as políticas de decisão disponíveis são:
|
Para ler diretrizes sobre como usar fluxos, subfluxos e ações com mais eficácia, consulte General guidelines for Workflow Studio flows, subflows, and actions.
Políticas de aprovação de mudança
- Entrada de política: Origens de variáveis avaliadas em uma condição.
- Decisões: Determina se a definição de aprovação de mudança deve ser aplicada com base nas condições.
- Definições de aprovação: Define o tipo de aprovação que pode ser aplicado.
- Política de mudança do modelo de DevOps
- Solicitação de mudança de DevOps Política de automação mínima
- Solicitação de mudança de DevOps Política de automação avançada
Para obter mais informações sobre políticas de aprovação de mudança, consulte Políticas de aprovação de mudança.
Os fluxos de aprovação automatizada do DevOps usam políticas de aprovação de mudança e dados do DevOps (como itens de trabalho, confirmações, solicitações de extração, resumos de testes, resumos de segurança, e resumos de qualidade) para atualizar automaticamente o estado do registro de mudança e o estado de execução da etapa para aprovado, rejeitado ou cancelado. Você pode exibir e editar essas políticas com base em seus requisitos de negócios ou criar suas próprias políticas na tabela de decisão. Consulte as tabelas de decisão a seguir.
A Política de automação mínima de solicitação de mudança do DevOps tem as seguintes condições e critérios por padrão:
A Política de automação avançada de solicitação de mudança de DevOps tem as seguintes condições e critérios por padrão:
- Aprovação automática: Se as condições especificadas na política forem atendidas, a solicitação de mudança será aprovada automaticamente.
- Rejeição automática: Se uma ou mais condições especificadas na política não forem atendidas, a solicitação de mudança será rejeitada automaticamente.
- Aprovação manual: Se uma ou mais condições precisarem de aprovação manual de um usuário ou grupo, isso será especificado na política. As notificações são enviadas pela política para os usuários ou grupos relevantes para agilizar a aprovação manual e prosseguir com a solicitação de mudança.
Você pode aplicar sua política de aprovação de mudança na ação do Change Management Workflow Studio para controlar o processo de aprovação de uma solicitação de mudança. Para obter mais informações, consulte Use a ação de fluxo Aplicar Política de Aprovação de Mudança.
Anotações de trabalho de aprovação de mudança
Quando uma solicitação de mudança é atualizada com base em um fluxo e na política de aprovação de mudança, as anotações de trabalho associadas à solicitação de mudança são atualizadas para uma das seguintes mensagens codificadas:
- Política de aprovação de mudança não encontrada. A solicitação de mudança foi rejeitada (%s).
- %s está inativo. A solicitação de mudança foi rejeitada (%s).
- Nenhuma decisão correspondida. %s foi ignorado (%s).
- Nenhuma aprovação foi gerada a partir de decisões correspondentes. %s foi ignorado (%s).
- A solicitação de mudança foi rejeitada por %s (%s).
- A solicitação de mudança foi aprovada por %s (%s).
if (APPROVED.equals(state))
38 message = String.format(APPROVED_MSG, policyName, actionLabel);Subfluxo do manipulador de mudanças padrão
- Solicitação de
- Justificativa
- Plano de implementação
- Plano de reversão
- Plano de testes
- Descrição Resumida
- Descrição
- Data de início
- Data de término
- Análise de impacto de risco
O subfluxo Manipulador de mudanças padrão substitui os valores de campo que foram preenchidos usando um modelo ao criar o registro de solicitação de mudança.
Se desejar, você pode gravar um subfluxo personalizado no lugar deste fluxo modificando o. [sn_devops.change_request_handler_subflow] DevOps propriedade.
Modelos de solicitação de mudança personalizados
O tipo de solicitação de mudança corresponde à tabela de solicitação de mudança no escopo global.
Solicitações de mudança automática relacionadas
- Confirmar
- Confirmações associadas à solicitação de mudança.
- Itens de trabalho
- Itens de trabalho associados à solicitação de mudança.
- Versões do Artefato
Lista de versões de artefato associadas ao pacote vinculado à execução do pipeline para pacotes criados antes da aprovação da solicitação de mudança.
Se nenhum pacote estiver vinculado à execução do pipeline, a lista estará vazia.
- Resumos de testes (substitui a lista relacionada Resultados de testes)
Lista de resumos de teste para uma execução de pipeline associada a um artefato, pacote ou execução de tarefa antes da solicitação de mudança.
Consulte Resultados do teste para obter mais detalhes.
- Resumo da qualidade do software
- Lista de resumos de qualidade de software para uma execução de pipeline associada a um artefato, pacote ou execução de tarefa antes da solicitação de mudança.
- Resumos de segurança
- Lista de resumos de segurança para uma execução de pipeline associada a um artefato, pacote ou execução de tarefa antes da solicitação de mudança.Nota:Os resultados da verificação de segurança no registro de mudança associado a uma execução de pipeline com um pacote vinculado também são exibidos na guia Resumos de segurança.
Processo de solicitação de mudança personalizada
Estes Propriedades de mudança do DevOps estão disponíveis para personalizar seu fluxo de solicitação de mudança.
- Estado de implementação da solicitação de mudança do DevOps
- Estado de pós-implementação da solicitação de mudança do DevOps
- Estado de cancelamento da solicitação de mudança do DevOps
- Texto de aprovação da solicitação de mudança do DevOps
Para personalizar seu fluxo de solicitação de mudança, você deve primeiro criar um . Por exemplo, DevOps_implementar (valor - 10) .
Em seguida, adicione a lista de seleção a. .
Depois de criar a lista de seleção e adicioná-la à inclusão de script, você pode atualizar Propriedades de mudança do DevOps com os novos valores da lista de seleção. Por exemplo, DevOps change request implement state -10 .
Condição de risco do DevOps
Você pode usar DevOps cálculo de risco e impacto com base na pontuação de risco do comprometido.
Esta condição está inativa por padrão.
Lista relacionada de resultados de testes
Lista os testes que foram executados em um pipeline após a criação de um pacote. Se nenhum pacote foi criado, a lista incluirá os testes que foram executados após a criação de uma versão de artefato.
Cenários:
- Um pacote é criado no pipeline, mas nenhuma versão de artefato é registrada.
- Se a solicitação de mudança for criada na fase de criação de pacote:
Nenhum resultado de teste é exibido porque um pacote ainda não está vinculado à execução do pipeline.
- Se a solicitação de mudança for criada em uma fase após a fase de criação do pacote:
Os resumos de testes de compilação incluem aqueles associados a fases após a fase de criação do pacote, até a fase de mudança controlada.
- Se a solicitação de mudança for criada na fase de criação de pacote:
- Versões de artefato são registradas, mas nenhum pacote foi criado.
- Se a solicitação de mudança for criada na fase de versão do artefato:
Nenhum resultado de teste será exibido, porque nenhum teste será associado até que a execução da tarefa seja concluída.
- Se a solicitação de mudança for criada em uma fase após a fase de versão do artefato:
Os resumos de testes de compilação incluem aqueles na fase de versão do artefato, bem como as fases posteriores, até a fase de mudança controlada.
- Se a solicitação de mudança for criada na fase de versão do artefato:
- As versões de artefato e o pacote são criados no pipeline.
- Se a solicitação de mudança fizer parte da fase após a versão do artefato e as fases de criação do pacote:
Os resumos de testes de compilação incluem aqueles associados à fase de criação de pacote, bem como as fases posteriores, até a fase de mudança controlada.
- Se a solicitação de mudança fizer parte da fase de criação do pacote e as versões de artefato forem criadas como parte de uma fase anterior;
- ou a solicitação de mudança é criada em uma fase (não na criação do pacote) após a fase de versão do artefato, mas antes da fase de criação do pacote;
- ou a solicitação de mudança faz parte da fase de criação de pacote e as versões de artefato são criadas como parte de uma fase anterior:
Os resumos de testes de compilação incluem aqueles associados à fase de versão do artefato, bem como fases posteriores, até a fase de mudança controlada.
- Se a solicitação de mudança fizer parte da fase após a versão do artefato e as fases de criação do pacote:
Exibição Execuções de pipeline
Você pode exibir a atividade do pipeline navegando até .