Plumber : CLI Open Source pour la conformité GitLab CI/CD
Gérer des pipelines GitLab CI/CD à grande échelle pose des défis uniques. Comment garantir que chaque pipeline respecte les standards de sécurité ? Comment maintenir la cohérence sur des centaines de projets ? Plumber est la solution — une CLI open source conçue pour analyser et appliquer la conformité dans vos workflows GitLab CI/CD.
Qu’est-ce que Plumber ?
Plumber est un outil en ligne de commande qui scanne vos fichiers de configuration .gitlab-ci.yml pour détecter les problèmes de sécurité et de conformité. Il aide les équipes à identifier les vulnérabilités, à appliquer les bonnes pratiques et à maintenir des pipelines prêts pour les audits sans reviews manuelles.
L’outil vérifie trois domaines critiques :
- Composition du pipeline — Détecte les jobs codés en dur et vérifie que tous les templates et composants requis sont inclus, à jour et suivent des motifs autorisés (pas de latest, main, ou autres références mutables).
- Images de conteneurs CI/CD — Identifie les images de conteneurs utilisant des tags mutables qui peuvent changer de manière inattendue et assure que les images proviennent uniquement de registries de confiance.
- Accès et autorisation — Vérifie que les branches critiques ont les paramètres de protection appropriés en place.

Fonctionnalités principales
- Checks de conformité automatisés — Exécutez Plumber dans votre pipeline CI/CD pour détecter automatiquement les problèmes avant qu’ils n’atteignent la production.
- Contrôles complets — Au-delà des trois domaines principaux, Plumber vérifie également les runners, caches, artifacts et nombreux autres éléments de configuration.
- Rapports clairs — Consultez les résultats directement dans la sortie du job ou téléchargez les artifacts du rapport pour les besoins d’audit et de correction.
- Intégration facile — Ajoutez le composant Plumber à votre pipeline et configurez les contrôles en quelques minutes.
Comment ça marche
Plumber scanne votre fichier .gitlab-ci.yml et le compare contre des checks de politique. Par exemple, il va signaler :
- Les composants utilisant des tags mutables comme @latest ou @main
- Les images de conteneurs avec des tags non versionnés comme node:latest
- Les composants provenant de registries non fiables
- Les règles de sécurité affaiblies comme when: never
Après le scan, Plumber fournit un rapport détaillé montrant ce qui doit être corrigé pour atteindre la conformité. Chaque problème est lié à des codes spécifiques documentés dans le guide des contrôles.
Démarrage rapide
Commencer avec Plumber ne prend que quelques étapes :
- Ajoutez Plumber à votre pipeline — Incluez le composant Plumber GitLab dans votre .gitlab-ci.yml
- Configurez vos contrôles — Définissez vos registries de confiance, les règles de protection de branches et autres politiques
- Exécutez votre pipeline — Plumber s’exécute dans votre workflow CI
- Consultez les résultats de conformité — Vérifiez la sortie du job ou téléchargez le rapport de conformité
Ressources
Plumber est open source, écrit en Go, et sous licence MPL-2.0. Avec plus de 580 étoiles sur GitHub et une communauté active, il devient la référence pour la conformité GitLab CI/CD.