GitLab configurações de solicitação de extração

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • GitLab execuções de pipeline de solicitação de extração (mesclagem), que passam pela aceleração de mudanças antes de passar para a produção, podem ser rastreadas em Velocidade de mudança para DevOps. Esta integração também coleta GitLab metadados de solicitações de mesclagem para persistir em Velocidade de mudança para DevOps. Os dados estão vinculados à mudança criada na execução do pipeline de solicitação de mesclagem e podem ser usados para aplicar políticas de mudança, revisão e aprovação.

    • Há suporte para criar, atualizar, fechar, reabrir e mesclar solicitações de extração.
    • A execução do pipeline de solicitação de pull para aceleração de mudanças em GitLab pipelines é compatível. Os detalhes da solicitação de extração estarão disponíveis para uso na política de aprovação de mudanças.
    • O status do pipeline GitLab é atualizado automaticamente com o status da solicitação de extração após a criação da mudança. O pipeline é pausado e retomado automaticamente.
    • Os IDs de e-mail são padronizados para o formato<user_name> @noreply.gitlab.com.
    • Os comentários são compatíveis como parte do suporte à solicitação de mesclagem. As solicitações de criação e atualização para extração são compatíveis, enquanto a exclusão e a edição não são compatíveis.
    • No máximo 100 confirmações serão mostradas em Velocidade de mudança para DevOps. Se você precisar acessar mais de 100, deverá consultar sua instância GitLab. Somente o comentário mais recente é preenchido.

    Configurações para habilitar solicitações de extração (mesclagem) para aprovação de mudanças

    A propriedade DevOpsHabilite para rastrear solicitações de extração (mesclagem) do GitLab. Se não estiver habilitado, as solicitações de extração (mesclagem) e os eventos relacionados serão ignorados permite o acompanhamento de solicitações de extração (mesclagem) de GitLab em Velocidade de mudança para DevOps.
    Nota:
    A propriedade está habilitada por padrão. Se você não quiser que as solicitações de mesclagem (extração) sejam rastreadas, será necessário desativá-la.

    Quando habilitadas, as mudanças na solicitação de extração (mesclagem) serão refletidas em Velocidade de mudança para DevOps. Quando desabilitado, Velocidade de mudança para DevOps ignora os eventos de solicitação de extração.

    Para a vinculação de solicitação de pull e pipeline de orquestração e para habilitar o acompanhamento da aprovação de mudanças, é necessário o seguinte:
    • Use GitLab o Docker para acompanhamento de mudanças. Para informações detalhadas, consulte Implementar ações personalizadas para pipelines usando a imagem de contêiner genérica do Docker.
    • No seu projeto GitLab,
      1. Navegar até
        • Para GitLab nuvem: Configurações > Mesclar solicitações.
        • Para No local (13.x): Configurações > Geral > Mesclar solicitações.
      2. Marque a caixa de seleção Os pipelines devem ser bem-sucedidos.

        Com esta seleção, somente se a mudança for aprovada, você poderá prosseguir com a solicitação de mesclagem. Ou seja, quando a caixa de seleção estiver marcada, as solicitações de pull serão bloqueadas até que a mudança seja aprovada.

        Configurações para opções de mesclagem.

      3. Selecione Salvar mudanças.
    • Navegue até o seu projeto e abra o arquivo .yml.
      Ao arquivo .yml, adicione a seguinte regra no nível do pipeline ou em níveis de trabalho específicos.
      rules:
       - if: $CI_PIPELINE_SOURCE == 'merge_request event'
       - if: $CI_PIPELINE_SOURCE != 'merge_request_event'

      Exemplo para nível de pipeline:

      workflow:
        rules:
        - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
        - if: $CI_PIPELINE_SOURCE != 'merge_request_event' 
      

      Exemplo de nível de trabalho:

      changeapproval:
         stage: changeapproval
         script:
           - sndevopscli create change -p '{"changeStepDetails":{"timeout":3600,"interval":100},"attributes":{"short_description":"Automated Software Deployment","description":"Automated Software Deployment.","assignment_group":"a715cd759f2002002920bde8132e7018","implementation_plan":"Software update is tested and results can be found in Test Summaries Tab.","backout_plan":"When software fails in production, the previous software release will be re-deployed.","test_plan":"Testing if the software was successfully deployed or not"}}'
         rules:
         - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
         - if: $CI_PIPELINE_SOURCE != 'merge_request_event'