Test migration depuis Gogs (git.hansen.tl)
- Python 54.1%
- TypeScript 44.4%
- Shell 1.1%
- CSS 0.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EThf6AGyJ8fguQNXb7YDh1 |
||
| conf | ||
| doc | ||
| docs/superpowers | ||
| frontend | ||
| icon | ||
| scripts | ||
| sources | ||
| v3 | ||
| .gitignore | ||
| catalog.json | ||
| manifest.toml | ||
| README.md | ||
backupmanager_ynh — développement
Paquet YunoHost pour Backup Manager. L'application (sources/) est une app Flask
classique ; scripts/, manifest.toml, conf/ sont la partie packaging YunoHost.
Lancer le serveur de dev
cd sources
python3 -m venv venv # une seule fois
source venv/bin/activate
pip install -r requirements.txt -r requirements-dev.txt # une seule fois / à chaque maj
FLASK_APP=app.py FLASK_DEBUG=1 flask run --port 5001
config.py(gitignoré, généré par YunoHost en prod) doit exister danssources/pour le dev. Il contient déjà des valeurs par défaut utilisables telles quelles (DB sqlite dans/tmp,DEBUG=True, token APIdev-token). S'il manque, le recréer à partir de la structure attendue parapp.py(DB_PATH,LOG_PATH,INSTANCE_NAME,INSTANCE_URL,API_TOKEN,SECRET_KEY, config SMTP).- L'app est servie sur http://localhost:5001/ (le port 5000 est celui de l'instance YunoHost, quand elle tourne sur la même machine).
Ctrl+Cpour arrêter. Si le port 5001 est déjà occupé, un serveur de dev tourne probablement déjà en arrière-plan (vérifier avecss -ltnp | grep 5001) — pas besoin d'en relancer un second.
Interface (React)
L'interface est dans frontend/ (React, Vite). Le bundle construit, sources/static/dist/,
est commité : Flask le sert tel quel, YunoHost n'a pas besoin de Node.
cd frontend
npm install # une seule fois
npm run dev # Vite sur http://localhost:5173/, /internal relayé vers le Flask de dev (port 5001, ou BM_DEV_PORT)
npm test # Vitest
npm run build # à relancer après toute modification du front
npm run e2e # banc Playwright : Flask jetable sur le port 5099, faux sudo et yunohost
Le test sources/tests/test_build_info.py échoue si le bundle commité ne correspond plus aux
sources du front : relancer npm run build.
Lancer les tests
cd sources
source venv/bin/activate
pytest
Notes
sources/venv/,sources/config.py,sources/*.db,sources/logs/sont gitignorés : chaque poste de dev les régénère localement.- Voir
doc/pour le cahier des charges etv3//catalog.jsonpour le processus de release côté catalogue YunoHost.