Configurar a proteção de ramificação

Nesta página, explicamos como configurar a proteção de ramificações para repositórios do Secure Source Manager.

A proteção de ramificações permite que os administradores de repositórios definam regras para controlar quem pode fazer mudanças nas ramificações, quem precisa aprovar ou revisar as mudanças e quais condições precisam ser atendidas antes que uma mudança aprovada possa ser mesclada em uma ramificação.

Para mais informações sobre as regras de proteção de ramificações, consulte Visão geral da proteção de ramificações.

Antes de começar

  1. Crie uma instância do Secure Source Manager.
  2. Crie um repositório do Secure Source Manager.

Funções exigidas

Para receber as permissões necessárias para configurar regras de proteção de ramificações para um repositório do Secure Source Manager, peça ao administrador para conceder a você os seguintes papéis do IAM:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.

Para informações sobre como conceder papéis do Secure Source Manager, consulte Controle de acesso com o IAM e Conceder acesso de instância aos usuários.

Criar uma regra de proteção de ramificações

Console

Para criar uma nova regra de proteção de ramificações, faça o seguinte:

  1. Na interface da Web do Secure Source Manager, selecione o repositório que você quer proteger com uma regra de proteção de ramificações.
  2. Na página do repositório, clique em Configurações.
  3. Clique na guia Regra de ramificação.
  4. Clique em Adicionar regra de ramificação.
  5. No campo ID da regra de ramificação, insira um nome para a regra de ramificação.

    Os IDs de regras de ramificação são restritos a letras minúsculas, números e hifens. O primeiro caractere precisa ser uma letra, e o último caractere precisa ser uma letra ou um número. Os IDs de regras de ramificação têm um máximo de 63 caracteres.

  6. No campo Filtro de ramificação, insira o nome da ramificação a que você quer aplicar a regra ou, se quiser que a regra seja aplicada a todas as ramificações, insira .*. A correspondência completa de expressões regulares está indisponível.

    Os filtros de regras de ramificação ativados precisam ser exclusivos do repositório. Os usuários podem ter vários filtros de regras de ramificação desativados. Por exemplo, não é possível ter duas regras de ramificação ativadas em um único repositório com o filtro de ramificação main.

    Quando várias regras são aplicáveis a uma ramificação, a regra de ramificação com um nome de ramificação específico como filtro de ramificação substitui a regra curinga. Por exemplo, uma regra de ramificação com o filtro de ramificação main vai substituir uma regra de ramificação com o filtro de ramificação .*. As regras não são combinadas.

  7. Na seção Detalhes da regra de proteção de ramificações, especifique os requisitos da regra de ramificação nas seguintes opções:

    • Exigir uma solicitação de envio antes da mesclagem: se ativada, os commits diretos para a ramificação serão bloqueados. Uma solicitação de envio precisa ser aberta antes da mesclagem na ramificação protegida.

    • Número necessário de revisores: especifique o número de revisores necessários para aprovar a mesclagem da solicitação de envio.

    • Número necessário de aprovadores: especifique o número de aprovadores necessários para aprovar a mesclagem da solicitação de envio.

      Revisores e aprovadores são usuários com papéis específicos do IAM. Para saber quais papéis são necessários para revisores e aprovadores, consulte Visão geral da proteção de ramificações.

    • Bloquear a mesclagem em revisões e aprovações obsoletas: se ativada, uma revisão ou aprovação será removida se novos commits forem enviados para a solicitação de envio após a concessão da revisão ou aprovação.

    • Exigir a resolução da conversa antes da mesclagem: se ativada, todos os comentários de código e as revisões de mudança de solicitação precisam ser resolvidos antes da mesclagem.

    • Exigir histórico linear: se ativada, as solicitações de envio que criariam um histórico Git não linear não poderão ser mescladas.

    • Exigir verificações de status: se ativada, as verificações de status de build selecionadas precisam ser bem-sucedidas antes que uma solicitação de envio possa ser mesclada. É necessário configurar acionadores no arquivo de acionadores antes de selecioná-los como verificações de status para proteção de ramificações.

  8. Para salvar a regra de ramificação, clique em Enviar.

A guia Regras de ramificação é exibida com a nova regra de ramificação listada.

Terraform

Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform. Para mais informações, consulte a Terraform documentação de referência do provedor.

Para criar uma nova regra de proteção de ramificações com o Terraform, use o google_secure_source_manager_branch_rule recurso.

A configuração de exemplo a seguir cria uma regra de proteção de ramificações para a ramificação main.

Antes de usar o exemplo, substitua o seguinte:

  • BRANCH_RULE_ID: o ID da regra de proteção de ramificações.
  • PROJECT_ID: o ID do projeto.
  • LOCATION: o local do repositório.
  • REPOSITORY_ID: o ID do repositório.
  • BRANCH_NAME_PATTERN: o nome da ramificação ou o padrão de regex, como main.
resource "google_secure_source_manager_branch_rule" "default" {
  branch_rule_id = "BRANCH_RULE_ID"
  project = "PROJECT_ID"
  location = "LOCATION"
  repository_id = "REPOSITORY_ID"
  include_pattern = "BRANCH_NAME_PATTERN"
  minimum_approvals_count   = 2
  minimum_reviews_count     = 2
  require_comments_resolved = true
  require_linear_history    = true
  require_pull_request      = true
  disabled = false
  allow_stale_reviews = false
}

Modificar uma regra de proteção de ramificações

Para modificar uma regra de proteção de ramificações, faça o seguinte:

  1. Na interface da Web do Secure Source Manager, selecione o repositório com a regra de proteção de ramificações que você quer modificar.
  2. Na página do repositório, clique em Configurações.
  3. Clique na guia Regras de ramificação.
  4. Clique no nome da regra de ramificação que você quer modificar.
  5. Edite a regra de proteção de ramificações.
  6. Clique em Atualizar.

A regra de proteção de ramificações é atualizada.

Excluir uma regra de proteção de ramificações

Para excluir uma regra de proteção de ramificações, faça o seguinte:

  1. Na interface da Web do Secure Source Manager, selecione o repositório do qual você quer remover a regra de ramificação.
  2. Na página do repositório, clique em Configurações.
  3. Clique na guia Regra de ramificação.
  4. Na linha da regra que você quer excluir, clique no ícone Excluir excluir.
  5. Na tela de confirmação Remover regra de ramificação, clique em Sim.

A regra de proteção de ramificações é excluída.

A seguir