Ce dépôt centralise les workflows GitHub Actions réutilisables et les git hooks pour maintenir la cohérence et la qualité du code dans tous les dépôts de la Fabrique Numérique.
Workflows réutilisables pour l'intégration et le déploiement continu :
- 01 - Introduction - Vue d'ensemble et utilisation
- 02 - Build Docker - Build d'images multi-architecture
- 03 - Clean Cache - Nettoyage du cache GitHub Actions et GHCR
- 04 - Lint Commits - Validation Conventional Commits
- 05 - Lint Helm - Lint des charts Helm
- 06 - Release App - Gestion automatisée des releases
- 07 - Release Helm - Publication de charts Helm
- 08 - Scan SonarQube - Analyse qualité du code
- 09 - Scan Trivy - Analyse de vulnérabilités
- 10 - Sync CPiN - Synchronisation GitLab CPiN
- 11 - Test Helm - Tests d'installation des charts
- 12 - Update Helm Chart - Mise à jour des versions de charts
Validation locale du code avant commit et push :
- 01 - Introduction - Installation et configuration
- 02 - Hooks commit-msg - Validation des messages de commit
- 03 - Hooks pre-commit - Lint avant commit
- 04 - Hooks pre-push - Vérification des signatures GPG
| Workflow | Description |
|---|---|
| build-docker.yml | Build et push d'images Docker multi-architecture |
| clean-cache.yml | Nettoyage du cache GitHub Actions et des images GHCR |
| lint-commits.yml | Validation Conventional Commits |
| lint-helm.yml | Lint des charts Helm avec chart-testing |
| release-app.yml | Gestion des releases avec release-please |
| release-helm.yml | Publication de charts Helm sur registres OCI |
| scan-sonarqube.yml | Analyse qualité du code avec SonarQube |
| scan-trivy.yml | Analyse de vulnérabilités avec Trivy |
| sync-cpin.yml | Synchronisation vers GitLab CPiN |
| test-helm.yml | Tests d'installation des charts dans Kind |
| update-helm-chart.yml | Mise à jour automatique des versions de charts |
| Hook | Type | Description |
|---|---|---|
| conventional-commit | commit-msg |
Validation Conventional Commits |
| eslint-lint | pre-commit |
Lint JS/TS/JSON/MD/YAML avec ESLint |
| helm-lint | pre-commit |
Lint des charts Helm |
| signed-commit | pre-push |
Vérification des signatures GPG |
| yaml-lint | pre-commit |
Lint YAML avec yamllint |
Consultez la documentation des git hooks pour les instructions d'installation.