Grupos y subgrupos de GitLab para organizar proyectos y permisos
Clase 7 de 53 • Curso de DevOps con GitLab
Resumen
Domina cómo usar los grupos de GitLab para organizar proyectos, controlar accesos y compartir recursos como runners y clusters de Kubernetes. Aquí entenderás qué son los grupos y subgrupos, cómo operan los namespaces y las visibilidades (pública, interna y privada), y los pasos clave para crearlos desde la interfaz.
¿Qué son los grupos y subgrupos y cómo protegen tu trabajo?
Los grupos permiten agrupar proyectos y compartir recursos entre equipos para trabajar de forma ordenada y segura. Además, facilitan otorgar permisos de acceso a usuarios dentro de gitlab.com y compartir infra común.
- Agrupar proyectos con su código y recursos asociados.
- Otorgar permisos de acceso por rol y necesidad.
- Compartir recursos: clusters de Kubernetes, templates, runners para CI.
Los subgrupos modelan la estructura real de tu compañía. Por ejemplo, equipos de desarrolladores, diseñadores y directivos pueden ser subgrupos separados. Esto no bloquea la comunicación, pero sí aplica reglas de seguridad para evitar accesos fuera del alcance del trabajo. Ejemplo: la persona que configura el continuous integration gestiona los secretos; no todos deben ver esa información.
¿Qué habilidades y conceptos aplicas aquí?
- Administración de permisos y seguridad por equipo.
- Modelado organizacional con subgrupos.
- Gestión de recursos compartidos para CI/CD.
- Manejo de secretos y principio de mínimo privilegio.
¿Cómo operan los namespaces, las menciones y los nombres reservados?
GitLab utiliza namespaces para asignar una URL única a cada usuario, grupo y subgrupo. Esto estandariza direcciones y facilita la comunicación con arroba.
- URL únicas por usuario, grupo y subgrupo.
- Menciones con @ a una persona, a todo un grupo o a subgrupos específicos.
No puedes usar cualquier nombre para un grupo: hay nombres reservados (similares a keywords en lenguajes de programación) en uso por el sistema. Ejemplos que no se pueden usar: commits, files, new, wikis. Existe una lista completa de nombres reservados que se debe consultar antes de nombrar.
¿Cómo crear un grupo y definir la visibilidad en GitLab?
Puedes crear un grupo desde varios lugares de la interfaz. La configuración inicial define nombre, descripción, avatar y visibilidad, lo que impacta en funcionalidades disponibles.
¿Dónde y cómo se crea un grupo?
- Barra de navegación: nuevo → nuevo grupo.
- Vista de grupos: tus grupos → botón nuevo grupo.
- Completa: nombre (ejemplo: Platzi GitLab Live), descripción, avatar, visibilidad.
- Clic en crear grupo para generar el namespace y la URL.
Dentro del grupo verás herramientas clave para la operación diaria: - Actividad del grupo y analíticos de contribución. - Vista agregada de issues y merge requests de proyectos y subgrupos. - Clusters compartidos y asignación de permisos a miembros.
¿Cómo se define la visibilidad y qué impacto tiene?
Hay tres tipos de visibilidad para grupos y proyectos: - Pública: cualquiera puede ver los contenidos, esté o no logueado. - Interna: solo usuarios logueados dentro de la instancia de GitLab. Aplica en gitlab.com y en instancias propias, ya que GitLab es open source y puede autogestionarse. - Privada: acceso únicamente mediante permisos otorgados en el grupo o proyecto.
Sobre funcionalidades: aunque GitLab es open source, muchas características avanzadas están detrás de una pasarela de pago cuando el grupo es privado. Si el grupo es público, se accede a una gran cantidad de funcionalidades como si se tuviera suscripción. Recomendación práctica: público para proyectos open source; privado para proyectos internos de compañía.
¿Cómo crear un subgrupo correctamente?
- Desde el grupo: nuevo subgrupo → completar nombre, descripción y visibilidad.
- Diferencia clave: el namespace del subgrupo se construye sobre el del grupo, afectando directamente la URL.
- Tras crearlo, ya puedes organizar miembros y proyectos por subáreas.
¿Tienes dudas o quieres compartir cómo organizas equipos, permisos y visibilidad en GitLab? Escribe en los comentarios y cuéntanos tu configuración ideal.