Commit Graph

6 Commits

Author SHA1 Message Date
sam 54f2c0e9ab deploy: récupération git robuste (fetch + reset --hard)
CI - Intégration continue / quality-and-tests (push) Successful in 3m13s
CD - Déploiement continu / deploy (push) Successful in 3m2s
Le "git pull" s'abandonnait dès qu'un fichier suivi avait été modifié
localement sur le serveur ("local changes would be overwritten"). On
répare d'abord les permissions (proprio = déployeur) puis on fait
fetch + reset --hard origin/master : récupération propre, insensible aux
modifs locales parasites. Les fichiers non suivis (cert.pem, .env) sont
préservés.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 19:49:23 +02:00
sam e8c6733b40 deploy: permissions storage compatibles avec git
CI - Intégration continue / quality-and-tests (push) Successful in 3m10s
CD - Déploiement continu / deploy (push) Successful in 3m34s
Le chown -R www-data cassait les futurs git pull/reset (les .gitignore
suivis passaient à www-data, inaccessibles à l'utilisateur SSH).
Désormais : propriétaire = utilisateur de déploiement, groupe = www-data
+ écriture de groupe + setgid, pour que git ET php-fpm puissent écrire.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 19:44:55 +02:00
Azmog b568bc63a9 feat: ajout de la configuration SonarQube pour l'analyse de qualité du code et mise à jour de la CI
CI - Intégration continue / quality-and-tests (push) Failing after 3m8s
CD - Déploiement continu / deploy (push) Successful in 3m7s
2026-07-06 13:17:50 +02:00
Azmog 1e6557729f feat: add HasCompositePrimaryKey trait for composite primary key support
CD - Déploiement continu / deploy (push) Successful in 3m7s
CI - Intégration continue / quality-and-tests (push) Failing after 2m30s
- Introduced a new trait `HasCompositePrimaryKey` to enable Eloquent models to handle composite primary keys, which are not supported natively by Eloquent. The trait requires models to implement a method to define the composite key columns and manages key retrieval for save and select queries.

chore: add GrumPHP configuration for pre-commit checks

- Added a `grumphp.yml` configuration file to enforce code style and static analysis checks before commits. This setup includes Laravel Pint for code style and Larastan for static analysis, ensuring code quality and consistency.

chore: create PHPStan configuration file

- Created a `phpstan.neon` file to configure PHPStan with Larastan for static analysis. The configuration specifies the paths to analyze and sets the analysis level to 5 for a balance between catching bugs and avoiding excessive strictness.
2026-07-06 12:06:54 +02:00
sam 3b7b527462 CI: ajoute l'extension pdo_sqlite pour les tests
CI - Intégration continue / quality-and-tests (push) Successful in 2m52s
CD - Déploiement continu / deploy (push) Successful in 3m1s
Les tests SecuriteTest utilisent une base SQLite en mémoire (RefreshDatabase) ;
le runner manquait le driver pdo_sqlite/sqlite3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 11:41:03 +02:00
sam e5e6f72f92 Sécurisation, déploiement CI/CD Gitea et documentation INFCDAAL3
CD - Déploiement continu / deploy (push) Successful in 6m44s
CI - Intégration continue / quality-and-tests (push) Failing after 2m30s
- CI/CD Gitea Actions: ci.yml (Pint + PHPUnit), deploy.yml (déploiement SSH)
- Suppression de l'ancien workflow GitHub cassé
- En-têtes de sécurité: ajout CSP et Permissions-Policy
- RGPD: droit à l'effacement (anonymisation du compte) + tests
- Correctifs: ForceHttps hors env testing, timestamps du modèle Utilisateur,
  suppression des migrations en doublon (migrate échouait sur base neuve)
- Qualité: formatage Laravel Pint sur l'ensemble du code
- Documentation dossier technique (docs/) + .docx + .pptx

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 11:09:34 +02:00