Aller au contenu

Qualité de Code, Linting & Sécurité

Automatiser la qualité et la sécurité de votre code — du formattage automatique au scan de vulnérabilités, le tout en self-hosted.


graph LR
    A["Introduction"] --> B["Linters"]
    B --> C["SonarQube"]
    C --> D["Scan CVE"]
    D --> E["SAST"]
    E --> F["Scan images"]
    F --> G["Pipeline CI"]

Ce que vous allez apprendre

À la fin de ce tutoriel, vous serez capable de :

  • Comprendre les différentes catégories d'outils de qualité (formatters, linters, SAST, SCA, scan images)
  • Configurer ESLint, Prettier, Ruff et Black sur un projet Python + JavaScript
  • Déployer SonarQube Community Edition en conteneur Podman
  • Scanner les dépendances pour détecter les CVE connues (pip-audit, npm audit, Trivy)
  • Analyser le code source avec Semgrep pour détecter les failles de sécurité
  • Scanner les images conteneur avec Trivy avant déploiement
  • Assembler tous ces outils dans un pipeline Gitea Actions

Prérequis

Prérequis Détail
Podman Installe et configuré (voir tutoriel Podman Rootless)
Gitea Instance Gitea avec Actions activees
Node.js Version 20+
Python Version 3.11+
Git Version 2.x

Parcours

Section Contenu
Introduction Fondamentaux, taxonomie des outils, stack retenue
Linters & Formatters ESLint, Prettier, Ruff, Black, pre-commit hooks
SonarQube Déploiement Podman, premier scan, quality gates
Scan de dependances pip-audit, npm audit, Trivy, CVE et CVSS
SAST Semgrep Règles OWASP, faux positifs, règles custom
Scan d'images Trivy image, remédiation, images minimales
Pipeline Gitea Actions Workflow CI complet, quality gates, artefacts