Configura la protección de ramas

En esta página, se explica cómo configurar la protección de ramas para los repositorios de Secure Source Manager.

La protección de ramas permite que los administradores de repositorios establezcan reglas para controlar quién puede realizar cambios en las ramas, quién debe aprobar o revisar los cambios y qué condiciones se deben cumplir antes de que se pueda combinar un cambio aprobado en una rama.

Para obtener más información sobre las reglas de protección de ramas, consulta Descripción general de la protección de ramas.

Antes de comenzar

  1. Crea una instancia de Secure Source Manager.
  2. Crea un repositorio de Secure Source Manager.

Roles obligatorios

Para obtener los permisos que necesitas para configurar las reglas de protección de ramas para un repositorio de Secure Source Manager, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Para obtener información sobre cómo otorgar roles de Secure Source Manager, consulta Control de acceso con IAM y Otorga a los usuarios acceso a la instancia.

Crea una regla de protección de ramas

Console

Para crear una regla de protección de ramas nueva, haz lo siguiente:

  1. En la interfaz web de Secure Source Manager, selecciona el repositorio que deseas proteger con una regla de protección de ramas.
  2. En la página del repositorio, haz clic en Settings.
  3. Haz clic en la pestaña Branch rule.
  4. Haz clic en Add branch rule.
  5. En el campo Branch rule ID, ingresa un nombre para la regla de ramas.

    Los IDs de las reglas de ramas se restringen a letras minúsculas, números y guiones. El primer carácter debe ser una letra y el último carácter debe ser una letra o un número. Los IDs de las reglas de ramas tienen un máximo de 63 caracteres.

  6. En el campo Branch filter, ingresa el nombre de la rama a la que deseas que se aplique la regla o, si deseas que la regla se aplique a todas las ramas, ingresa .*. No se admite la coincidencia completa de expresiones regulares.

    Los filtros de reglas de ramas habilitados deben ser únicos para su repositorio. Los usuarios pueden tener varios filtros de reglas de ramas inhabilitados. Por ejemplo, no puedes tener dos reglas de ramas habilitadas en un solo repositorio con el filtro de ramas main.

    Cuando se aplican varias reglas a una rama, la regla de ramas con un nombre de rama específico como filtro de ramas anulará la regla de comodín. Por ejemplo, una regla de ramas con el filtro de ramas main anulará una regla de ramas con el filtro de ramas .*. Las reglas no se combinan.

  7. En la sección Branch protection rule details, especifica los requisitos para tu regla de ramas con las siguientes opciones:

    • Require a solicitud de extracción before merging: Si está habilitada, se bloquearán las confirmaciones directas en la rama. Se debe abrir una solicitud de extracción antes de realizar la combinación en la rama protegida.

    • Cantidad de revisores necesarios: especifica la cantidad de revisores necesarios para aprobar la solicitud de extracción y realizar la combinación.

    • Cantidad de responsables de aprobación necesarios: especifica la cantidad de responsables de aprobación necesarios para aprobar la solicitud de extracción y realizar la combinación.

      Los revisores y los responsables de aprobación son usuarios con roles de IAM específicos. Para saber qué roles son necesarios para los revisores y los responsables de aprobación, consulta Descripción general de la protección de ramas.

    • Bloquear fusión en revisiones y aprobaciones obsoletas: si está habilitada, se quitará una revisión o aprobación si se envían confirmaciones nuevas a la solicitud de extracción después de que se otorgue la revisión o la aprobación.

    • Require conversation resolution before merging: Si está habilitada, se deben resolver todos los comentarios de código y las revisiones de cambios solicitados antes de realizar la combinación.

    • **Require linear history**: Si está habilitada, no se pueden combinar las solicitudes de extracción que crearían un historial de Git no lineal.

    • Require status checks: Si está habilitada, las verificaciones de estado de compilación seleccionadas deben ser correctas antes de que se pueda combinar una solicitud de extracción. Debes configurar los activadores en tu archivo de activadores antes de poder seleccionarlos como verificaciones de estado para la protección de ramas.

  8. Para guardar la regla de ramas, haz clic en Submit.

Se muestra la pestaña Branch rules, con la nueva regla de ramas en la lista.

Terraform

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform. Para obtener más información, consulta la Terraform documentación de referencia del proveedor.

Para crear una regla de protección de ramas nueva con Terraform, usa el google_secure_source_manager_branch_rule recurso.

En la siguiente configuración de ejemplo, se crea una regla de protección de ramas para la rama main.

Antes de usar la muestra, reemplaza lo siguiente:

  • BRANCH_RULE_ID: Es el ID de la regla de protección de ramas.
  • PROJECT_ID: Es el ID del proyecto.
  • LOCATION: Es la ubicación del repositorio.
  • REPOSITORY_ID: Es el ID del repositorio.
  • BRANCH_NAME_PATTERN: Es el nombre de la rama o el patrón de expresión regular, 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
}

Modifica una regla de protección de ramas

Para modificar una regla de protección de ramas, haz lo siguiente:

  1. En la interfaz web de Secure Source Manager, selecciona el repositorio con la regla de protección de ramas que deseas modificar.
  2. En la página del repositorio, haz clic en Settings.
  3. Haz clic en la pestaña Branch rules.
  4. Haz clic en el nombre de la regla de ramas que deseas modificar.
  5. Edita la regla de protección de ramas.
  6. Haz clic en Update.

Se actualizó la regla de protección de ramas.

Borra una regla de protección de ramas

Para borrar una regla de protección de ramas, haz lo siguiente:

  1. En la interfaz web de Secure Source Manager, selecciona el repositorio del que deseas quitar la regla de ramas.
  2. En la página del repositorio, haz clic en Settings.
  3. Haz clic en la pestaña Branch rule.
  4. En la fila de la regla que deseas borrar, haz clic en el ícono Borrar borrar.
  5. En la pantalla de confirmación Remove branch rule, haz clic en Yes.

Se borró la regla de protección de ramas.

¿Qué sigue?