¿Qué es el Repositorio de Código asociado a la Plataforma Pre-Cloud y cómo se usa?

Contenido

Descripción

El Repositorio de Código asociado a la plataforma PreCloud se basa en GitLab. GitLab es una solución completa para la gestión de proyectos software y almacenamiento de código. Permite el alojamiento de proyectos, la colaboración en equipo, el control de versiones, la automatización de ciertas tareas y la integración con herramientas externas.

Alcance

Actualmente, están dentro del alcance del  repositorio de código asociado a la Plataforma Pre-Cloud todos los Sistemas de Información de la DGED y aquellos sistemas que se vayan a desplegar en la Plataforma Pre-Cloud.

¿Para qué se usa el repositorio de código?

El repositorio de código, al basarse en GitLab, abarca muchos aspectos del desarrollo de software, pero el principal uso será como repositorio de control de versiones, utilizando otras herramientas para completar el ciclo de vida de los desarrollos.

En el repositorio, entre otras, se podrá:

Gestionar los accesos y permisos mediante roles y grupos:

El repositorio de código ofrece dos elementos para jerarquizar sus contenidos:

  • Grupos: Actuarán como contenedores de usuarios y proyectos. Facilitan la organización y gestión de permisos dentro del repositorio.
  • Proyecto: Espacio que contendrá el código para un componente concreto del Sistema de Información.

Con el grupo definido en el repositorio de código, se permitirá:

  • Unificar proyectos que tengan relación.
  • Conceder permisos a los diferentes proyectos de una sola vez.

Además, en el contexto de la Plataforma Pre-Cloud:

  • Todo Sistema de Información tendrá un grupo raíz que actuará como contenedor de los diferentes componentes software y serán gestionados por un conjunto específico de usuarios. Su gestión será delegada a la dirección del proyecto correspondiente.
  • Se seguirán las normas descritas en Normas de gestión de código en la Plataforma Pre-Cloud.
  • Los responsables del Sistema de Información, como propietarios del grupo:
    • tendrán autonomía para gestionar los permisos y accesos al grupo,
    • gestionarán la visibilidad a contenidos y/o restricción por proyectos de manera limitada.
    • gestionarán los permisos o limitaciones para la realización de ciertas acciones concretas.

Roles existentes para gestionar un Sistema de Información:

El detalle sobre los roles y los permisos de usuarios se describen en el apartado Roles y permisos de usuarios de la página Como se gestionan los permisos en Gitlab.

Visibilidad por defecto de los grupos dentro del repositorio de código

En el repositorio de código, existen tres tipos de visibilidades para un grupo o proyecto:

  • Privado: solo los miembros explícitos del grupo o proyecto pueden ver el contenido.

  • Interno: solo los usuarios autenticados en el repositorio pueden ver el contenido del grupo o proyecto.

  • Público: cualquier usuario con acceso puede ver el contenido del grupo o proyecto, sin necesidad de autenticarse en el repositorio.

Por defecto, la visibilidad que se dará al crear el grupo es Privada, de forma que el responsable del grupo será quien decida qué usuarios pueden acceder y con qué rol.

Importar repositorios existentes:

  • Permite crear repositorios clones desde repositorios previamente creados.

Disponer en cualquier momento del historial de modificaciones del proyecto:

  • De cara al desarrollo colaborativo, cuando alguien hace alguna modificación, se permite verla clara e intuitivamente ahorrando largas explicaciones o investigación sobre el código.

Realizar la creación de proyectos desde arquetipos:

  • Se puede comenzar a crear un proyecto desde cero, eligiendo un arquetipo, lo que generará un proyecto en GitLab con un código base sobre el que empezar a trabajar.

Disponer de la copia completa del repositorio:

  • El repositorio de código está basado en un sistema de control de versiones distribuido, lo que significa que cada usuario tiene una copia completa y autónoma del repositorio, incluyendo todo el historial de versiones y los datos de archivos, lo que permite a los usuarios trabajar y colaborar de manera descentralizada, sin depender de la disponibilidad del servidor central para el almacenamiento y gestión de los archivos. Cada copia del repositorio es una fuente confiable y completa de la información, lo que garantiza la integridad y seguridad de los datos.

Preguntas frecuentes