Dashboard de pipelines Gitlab CI/CD
J’étais prêt à écrire du code pour répondre à ce besoin qui est de pouvoir suivre les pipelines de nombreux projets sur un seul dashboard sans à devoir acquérir une licence gitlab.
Et je suis tombé dans la documentation de gitlab ↗ sur ce projet ↗ qui est opérationnel et ne demande à renseigner qu’une ou deux variables de configuration pour être opérationnel.
Ce produit utilise simplement des requêtes sur l’API de gitlab pour remonter les métriques dans un serveur Prometheus. Ces données sont ensuite présentées dans des dashboards grafana:
- Un premier présentant l’état des pipelines avec leur état (running, failed, canceled, manual, …)
- Un second présentant la liste des jobs avec leur état (running, failed, canceled, manual, …)
- Un dernier sur l’état des environnements de chaque projet.
Ces trois dashboards présentent les ID avec des liens directs vers le serveur gitlab.
Mise en oeuvre
Si vous souhaitez utiliser rapidement ce projet sur votre serveur gitlab.
Il suffit :
- De cloner le projet et de se rendre dans le dossier
examples/quickstart
- De créer un PAT sur votre compte gitlab avec juste les droits read_api.
- D’éditer le fichier
gitlab-ci-pipelines-exporter.yml
et d’y mettre l’url de votre serveur gitlab, le token et les projets que vous voulez monitorer
Modifier les lignes suivantes :
Une fois faites toutes ces modifications, il suffit de lancer la stack
docker-compose
:
Vraiment simple à tester non!
Pour l’installer définitivement, tout est documenté dans le repository.