auto_clea

This commit is contained in:
LeCoffre Deployment 2025-09-25 16:49:11 +00:00
parent df6616641c
commit cddb14c39d
3 changed files with 43 additions and 61 deletions

2
.gitignore vendored
View File

@ -104,6 +104,6 @@ supervisor-logs/
deploy-*.tmp
setup-*.tmp
.cursor-server
lecoffre-front/data_test_accound.md/home/debian/4NK_env/logs/
/home/debian/4NK_env/logs/
/home/debian/4NK_env/backups/
backups/

View File

@ -28,3 +28,11 @@ Centraliser toute la documentation des projets dans `4NK_env/docs/<projet>/` et
grep -R "\bdocs/\b" /home/debian/4NK_env | grep -v "/home/debian/4NK_env/docs/" || true
```
- Sassurer que les READMEs des projets mentionnent explicitement `4NK_env/docs/<projet>/`.
## Exclusions (ne pas centraliser)
- Conserver la documentation intégrée du front: `lecoffre-front/src/front/Assets/docs/`
- Conserver les fichiers racine par projet: `README.md`, `CHANGELOG.md`, `CONTRIBUTING.md`
## État actuel
- Scan effectué. Exclusions ci-dessus appliquées.
- Centralisation uniquement des autres contenus de documentation si présents.

View File

@ -1,70 +1,44 @@
## Politique de tests (centralisés)
# Tests Centralisés - Politique de Gestion
### Objectifs
- Centraliser tous les tests dans `4NK_env/tests/<projet>/`.
- Garantir lisolation (pas détat partagé entre tests).
- Conserver la compatibilité: les anciens chemins `tests/` des projets sont des liens symboliques vers `4NK_env/tests/<projet>/` (transition). À terme, référencer directement les chemins centralisés dans docs/CI.
## Objectif
Centraliser tous les tests dans `4NK_env/tests/<project>/` pour une gestion unifiée et éviter la dispersion des fichiers de test.
### Arborescence cible
## Structure des répertoires
```
4NK_env/
└── tests/
├── lecoffre_node/
├── lecoffre-front/
├── ihm_client/
├── sdk_relay/
└── sdk_storage/
4NK_env/tests/
├── lecoffre_node/
│ └── test_env.sh # (migré depuis lecoffre_node/)
├── lecoffre-front/
│ └── data_test_accound.md # (migré depuis lecoffre-front/)
├── ihm_client/ # (répertoire créé, vide)
└── README.md # Documentation des tests
```
### Isolation et données
- Chaque test doit isoler son stockage dans un répertoire unique: `/tmp/.4nk/<uuid>`.
- Éviter toute dépendance à un état global ou à des fichiers hors du répertoire de test.
- Ne jamais écrire dans `./data` des projets; préférer des répertoires temporaires par test.
## Isolation des tests
- Chaque test doit utiliser un répertoire unique (ex: `/tmp/.4nk/{uuid}`)
- Éviter la pollution croisée entre tests
- Nettoyer automatiquement après exécution
### Exemples dexécution (projets)
- lecoffre_node (scripts custom):
## Exécution des tests
```bash
cd /home/debian/4NK_env/lecoffre_node
# Exemples (si présents): ./scripts/test-monitoring.sh, ./scripts/test-dashboards.sh
# Tests pour lecoffre_node
cd /home/debian/4NK_env/tests/lecoffre_node
./test_env.sh
# Tests pour lecoffre-front
cd /home/debian/4NK_env/tests/lecoffre-front
# Consulter data_test_accound.md pour les données de test
```
- lecoffre-front (Next/Node):
```bash
cd /home/debian/4NK_env/lecoffre-front
npm test
```
## Stratégie de migration
1. ✅ Scanner les dossiers `tests/` des sous-projets
2. ✅ Créer la structure centralisée `4NK_env/tests/<project>/`
3. ✅ Déplacer les fichiers de test existants
4. ✅ Vérifier et corriger les références aux anciens chemins
5. [ ] Adapter les configurations pour pointer vers les chemins centralisés
6. [ ] Supprimer les anciens répertoires de test vides
- ihm_client (Vite/Node):
```bash
cd /home/debian/4NK_env/ihm_client
npm test
```
- sdk_relay / sdk_storage:
```bash
cd /home/debian/4NK_env/sdk_relay && cargo test || true
cd /home/debian/4NK_env/sdk_storage && cargo test || true
```
### Bonnes pratiques
- Tests hermétiques: créer/détruire ressources durant le test; pas de dépendance sur lordre dexécution.
- Logs: si des logs sont nécessaires, écrire vers `/home/debian/4NK_env/logs/tests/<projet>/`.
- CI: ne pas utiliser de chemins relatifs aux anciens `tests/`; cibler `4NK_env/tests/<projet>/`.
### Migration (transition → cible)
1. Les dossiers `tests/` dans les projets pointent actuellement par symlink vers `4NK_env/tests/<projet>/`.
2. Mettre à jour progressivement documentation, scripts, CI pour référencer directement les chemins centralisés.
3. Supprimer les symlinks une fois la migration complète validée.
### Vérifications
- Pas de dépendances résiduelles aux anciens chemins `./tests` dans scripts/CI: rechercher `\b\./tests\b` et corriger si présent.
- Pas décriture dans `./data` des projets par les tests; utilisation de `/tmp/.4nk/<uuid>`.
### Commandes utiles
```bash
# Lister les suites de tests centralisées
find /home/debian/4NK_env/tests -maxdepth 2 -type d
# Rechercher références aux anciens chemins dans le repo
grep -R "\b\./tests\b" /home/debian/4NK_env || true
```
## Notes
- Les tests dans `node_modules/` sont exclus (dépendances tierces)
- Seuls les fichiers de test projet sont centralisés
- Maintenir la compatibilité avec les CI/CD existants