CI / CD
Ne réinventez pas la roue : une CI/CD performante avec muppy
CI/CD Classique
Conception
- Definir Pipelines, Stages, Jobs
Installation
- Provision servers ( CI/CD and Workers, Runners)
Development
- Coder tous les scripts
- Se former sur tous les outils d'analyse et leur mise en oeuvre
- Créer tous les packages de déploiements et les scripts
Exploitation CI/CD
- Les développeurs doivent aller dans chacun des outils d'analyse pour comprendre les résultats d'analyse
- Les déploiements sont gérés par différents outils (eg. ArgoCD)
Gitlab Auto DevOps + Muppy
Conception
- Sélectionner les parties de Pipelines à désactiver
Installation
- Activer Auto DevOps en 3 clics
Development
- Ajouter un fichier gitlab-ci.yaml à la racine de chaque repo si besoin de personnaliser
Exploitation CI/CD
- Tous les résultats remontent dans Gitlab et sont exploitables sous forme de logs (version gratuite) ou via un GUI (pour les versions payantes).
- Les déploiements (partie test/review) sont déclenchés par les pipeline Gitlab et gérés par Muppy.
Au delà de la conception et du setup initial de la CI/CD, Gitlab permet de s'affranchir du coût de la maintenance d'une CI/CD (OS, Outils et nouvelles pratiques)
- Auto Code Quality
- Code Climate : Outil d'analyse de qualité et performance du code
- Auto SAST (Static Application Security Testing)
- Gitlab Advanced SAST : Analyse du code source pour identifier les failles de sécurité et les vulnérabilités potentielles
- Semgrep, bandit
- Auto Secret Detection
- Gitlab Secret Detection Docker image : Analyse du code source pour identifier des secrets ou informations sensibles (comme des clés API, mots de passe, ou tokens) qui auraient été accidentellement laissés dans le code
- Auto Dependency Scanning
- Gemnasium-python : Analyse des dépendances au niveau source code
- setuptools, pip, pipenv, poetry
- Auto Container Scanning
- Trivy : Analyse des images docker à la recherche de dépendances, licences, CVE, secrets, pb configuration (Iac Issues)
- Trivy : Analyse des images docker à la recherche de dépendances, licences, CVE, secrets, pb configuration (Iac Issues)
Tous ces tests sont exécutés automatiquement à chaque commit, offrant ainsi des garanties de conformité et de sécurité essentielles pour les audits