Trabajo con el repositorio mantenimiento-gitlab

Lo primero que deberemos hacer para desplegar nuestros proyectos en la infraestructura será hacer un fork a nuestro espacio del proyecto https://gitlab.com/umugit/atica/desarrollo/mncs/mantenimiento-gitlab si no lo hemos hecho ya, para ello tendremos que poner un Jira a MNCS indicando el espacio donde deberá hacerse el fork (típicamente el nombre de nuestro grupo de trabajo).


Una vez realizado esto contaremos con un proyecto git en nuestro espacio de trabajo que se localizará con una URL de la siguiente forma https://gitlab.com/umugit/atica/desarrollo/GRUPOTRABAJO/mantenimiento-gitlab/

 


A continuación procederemos a crear nuestro proyecto git en local clonándolo con el comando habitual

$ git clone https://gitlab.com/umugit/atica/desarrollo/GRUPOTRABAJO/mantenimiento-gitlab/

Posteriormente configuraremos un segundo origen para el proyecto (recordemos que hemos hecho un fork y que deberemos hacer referencia al proyecto principal)

$ git remote add upstream https://gitlab.com/umugit/atica/desarrollo/mncs/mantenimiento-gitlab/




Actualizar fork del grupo

Todos estos pasos se realizan la primera vez que configuramos el repositorio, a partir de aquí tendremos que seguir los siguientes pasos

$ git checkout master

Nos situamos en la rama master del proyecto

$ git pull upstream master --rebase

Actualizamos dicha rama master con la rama del remoto de sistemas, que es donde se almacena la configuración definitiva

$ git push origin master

Mandamos los cambios a nuestro fork en remoto para evitar estar desincronizados y evitar conflictos. Si os falla puede que no tengáis permisos, pedidle a vuestro responsable el rol Maintainer en vuestro fork.


Credenciales

GL_TOKEN: Tu token de acceso de grupo de GitLab con permisos de API

Vamos a https://gitlab.com/umugit/atica/desarrollo/NOMBREGRUPO/


Damos a Add new token

Se nos presenta este formulario y debemos rellenar lo que aquí se marca



Nos aparece esta pantalla cuando pulsamos el botón para crear la credencial


Donde tendremos que guardar nuestra credencial porque no nos la mostrará otra vez.


Debe quedar así


Creamos la variable GL_TOKEN a nivel de grupo


Tareas

Las tarejas se ejecutan como pipelines, así que habrá que entrar en

A. Análisis de información (SCRIPT_TYPE=info)

Ejecuta: info-proyectos.py

Descripción: Genera informe completo con estadísticas de proyectos

Artefactos: Archivo CSV con datos de proyectos

Para ejecutar esta tarea


GL_PROJECT_ID es OPCIONAL, si no se incluye, se ejecutará para todos los proyectos del grupo

Para averiguar el ID del proyecto tenemos que ir a su principal en gitlab y a la derecha, parte superior


El resultado de la ejecución se ve en la tarea

B. Limpieza de almacenamiento (SCRIPT_TYPE=cleanup)

Elimina los artefactos de más de 5 días y las ejecuciones de más de 30 (jobs, pipelines, etc...)

Se ejecuta de manera análoga al anterior

C. Ejecución por lotes (SCRIPT_TYPE=run)

Ejecutará los pipelines de las ramas BRANCH cuyo topic corresponda con TOPIC (puede ser el slug del proyecto o la tecnología fundewebjs o fundeweb)