CI/CD avec GitHub Actions¶
ExploreIOT inclut un pipeline CI/CD automatisé pour la détection des vulnérabilités et les tests.
Trivy Security Scanning¶
Les images Docker sont scannées avec Trivy pour les vulnérabilités connues avant le déploiement :
# .github/workflows/security.yml
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@master
with:
image-ref: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.TAG }}
format: 'sarif'
output: 'trivy-results.sarif'
Les rapports SARIF sont uploadés dans l'onglet "Security" de GitHub.
Tests automatisés¶
Les tests frontend Vitest et backend pytest s'exécutent automatiquement à chaque push :
Tous les tests doivent passer avant que la PR ne soit fusionnée.
Pipeline complet¶
Le workflow GitHub Actions (.github/workflows/ci.yml) exécute :
- Lint — ESLint + TypeScript check
- Tests — Vitest (frontend) + pytest (backend)
- Build — Docker images multi-stage
- Scan — Trivy vulnerability scanning
Voir aussi
- Déployer avec Docker — guide de déploiement
- Modèle de sécurité — stratégie de sécurité