All checks were successful
Deploy Bot on NAS / deploy (push) Successful in 30s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2 KiB
2 KiB
CLAUDE.md
Contexte
Bot Discord de tracking de Personal Best (PB) pour les clan bosses du jeu Raid Shadow Legends. Communauté TEA — The Ember Accord (4 clans : TEAI, TEAF, TEAC, TEACO).
Branches
| Branche | Environnement | Chemin NAS |
|---|---|---|
main |
Production | /share/CACHEDEV1_DATA/discord-bot-prod |
dev |
Développement | /share/CACHEDEV1_DATA/discord-bot-dev |
Déploiement
CI/CD via Forgejo Actions → runner vm-runner (192.168.1.53) → rsync vers NAS QNAP (192.168.1.208).
Push sur main ou dev déclenche le déploiement automatique.
Secret requis dans Forgejo : NAS_SSH_KEY (clé privée ed25519 pour SSH Elewyn@NAS).
Persistance des données (NE PAS écraser)
Ces dossiers vivent sur le NAS et sont montés dans le container — jamais dans le repo, jamais écrasés par rsync :
| Dossier | Contenu |
|---|---|
data/ |
Base SQLite (bot_data.db) |
screenshots/ |
Captures d'écran des PBs |
logs/ |
Logs du bot |
Variables d'environnement (.env sur le NAS)
Fichier .env à créer manuellement sur le NAS dans chaque DEPLOY_PATH :
DISCORD_TOKEN=...
AUTHORIZED_CHANNEL_ID=...
Structure
bot.py # Point d'entrée, charge les cogs
config.py # Config centralisée (token, chemins, boss, clans)
cogs/ # Commandes Discord (un fichier par fonctionnalité)
utils/ # Managers (DB, screenshots, mercy) et handlers
Dockerfile # Image Python 3.9-slim
docker-compose.yml # Déploiement container
Boss supportés
- Hydra : normal, hard, brutal, nightmare
- Chimera : easy, normal, hard, brutal, nightmare, ultra
- CvC : Clan vs Clan
Pièges connus
- Le
.envne doit jamais être commité — il contient le token Discord data/,screenshots/,logs/sont gitignorés — données persistantes sur le NAS- Le rsync exclut ces dossiers pour ne pas écraser les données en prod