GitHub workflows
Statut
Document de cadrage DevOps — version initiale.
Objectif
Les workflows GitHub doivent automatiser les contrôles répétitifs : lint, tests, build, sécurité de base et éventuellement déploiement.
Ils doivent rester lisibles et alignés avec l'organisation réelle du workspace.
État actuel visible
L'inspection locale hors node_modules et vendor ne confirme pas de workflow GitHub projet présent dans le workspace.
Des workflows existent dans des dépendances ou dossiers tiers, mais ils ne constituent pas des workflows DMV maintenus.
Le contexte validé mentionne des workflows CI/CD visibles partiellement. Ce point doit être consolidé dans le dépôt source réel.
Workflows cibles
| Workflow | Déclenchement | Rôle |
|---|---|---|
| Backend CI | Pull request et push | Composer, tests Laravel, qualité PHP. |
| Public frontend CI | Pull request et push | Installation, lint, build Next.js. |
| Backoffice CI | Pull request et push | Installation, lint, build Vite. |
| Docs check | Pull request docs | Liens, format Markdown si outillage retenu. |
| Deploy staging | Push branche staging | Déploiement environnement de test. |
| Deploy production | Release ou validation manuelle | Déploiement contrôlé. |
Secrets GitHub
Les secrets GitHub doivent être limités et nommés clairement :
- clé SSH de déploiement ;
- host de déploiement ;
- utilisateur de déploiement ;
- tokens de registry si nécessaire ;
- variables provider frontend si utilisées ;
- webhook de notification si retenu.
Les secrets applicatifs complets ne doivent pas être dispersés inutilement dans GitHub si le serveur peut les conserver dans .env.
Principes
- Un workflow doit avoir un objectif unique.
- Les étapes doivent être reproductibles localement.
- Les déploiements production doivent être protégés.
- Les logs ne doivent pas afficher de secrets.
- Les versions des actions doivent être figées.
- Les builds doivent utiliser les lockfiles.
Contrôles recommandés
composer install;php artisan testsi environnement prêt ;vendor/bin/pint --testsi standard actif ;npm ci;npm run lint;npm run build;- vérification d'absence de secrets évidents ;
- validation des fichiers de déploiement.
Points à clarifier
- Dépôt GitHub source de vérité.
- Workflows déjà existants hors workspace local.
- Règles de protection de branches.
- Environnements GitHub Actions.
- Déploiement par SSH ou autre mécanisme.
- Notifications de succès/échec.