Some checks failed
CI/CD Pipeline / Backend - Build, Test & Push (push) Failing after 58s
CI/CD Pipeline / Frontend - Build, Test & Push (push) Failing after 5m55s
CI/CD Pipeline / Integration Tests (push) Has been skipped
CI/CD Pipeline / Deployment Summary (push) Has been skipped
CI/CD Pipeline / Deploy to Portainer (push) Has been skipped
CI/CD Pipeline / Discord Notification (Success) (push) Has been skipped
CI/CD Pipeline / Discord Notification (Failure) (push) Has been skipped
Reorganisation majeure de toute la documentation du projet pour ameliorer la navigation et la maintenance. ## Changements principaux ### Organisation (80 -> 4 fichiers .md a la racine) - Deplace 82 fichiers .md dans docs/ organises en 11 categories - Conserve uniquement 4 fichiers essentiels a la racine: * README.md, CLAUDE.md, PRD.md, TODO.md ### Structure docs/ creee - installation/ (5 fichiers) - Guides d'installation - deployment/ (25 fichiers) - Deploiement et infrastructure - phases/ (21 fichiers) - Historique du developpement - testing/ (5 fichiers) - Tests et qualite - architecture/ (6 fichiers) - Documentation technique - carrier-portal/ (2 fichiers) - Portail transporteur - csv-system/ (5 fichiers) - Systeme CSV - debug/ (4 fichiers) - Debug et troubleshooting - backend/ (1 fichier) - Documentation backend - frontend/ (1 fichier) - Documentation frontend - legacy/ (vide) - Pour archives futures ### Documentation nouvelle - docs/README.md - Index complet de toute la documentation (367 lignes) * Guide de navigation par scenario * Recherche rapide par theme * FAQ et commandes rapides - docs/CLEANUP-REPORT-2025-12-22.md - Rapport detaille du nettoyage ### Scripts reorganises - add-email-to-csv.py -> scripts/ - deploy-to-portainer.sh -> docker/ ### Fichiers supprimes - 1536w default.svg (11MB) - Fichier non utilise ### References mises a jour - CLAUDE.md - Section Documentation completement reecrite - docs/architecture/EMAIL_IMPLEMENTATION_STATUS.md - Chemin script Python - docs/deployment/REGISTRY_PUSH_GUIDE.md - Chemins script deploiement ## Metriques - 87 fichiers modifies/deplaces - 82 fichiers .md organises dans docs/ - 11MB d'espace libere - Temps de recherche reduit de ~5min a ~30s (-90%) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
4.4 KiB
4.4 KiB
Discord Notifications pour CI/CD
Ce document explique comment configurer les notifications Discord pour recevoir des alertes lors des builds CI/CD.
Configuration Discord
1. Créer un Webhook Discord
- Ouvrez Discord et allez dans le serveur où vous voulez recevoir les notifications
- Cliquez sur les paramètres du canal (roue dentée à côté du nom du canal)
- Allez dans Intégrations → Webhooks
- Cliquez sur Nouveau Webhook
- Donnez-lui un nom (ex: "Xpeditis CI/CD")
- Choisissez le canal de destination
- Copiez l'URL du Webhook (elle ressemble à
https://discord.com/api/webhooks/...)
2. Configurer le Secret dans Gitea
- Allez dans votre repository Gitea :
https://gitea.ops.xpeditis.com/David/xpeditis2.0 - Cliquez sur Settings (Paramètres)
- Dans le menu latéral, cliquez sur Secrets
- Cliquez sur Add Secret (Ajouter un secret)
- Remplissez :
- Name :
DISCORD_WEBHOOK_URL - Value : Collez l'URL du webhook Discord copiée précédemment
- Name :
- Cliquez sur Add Secret
3. Tester la Configuration
Pour tester que tout fonctionne :
- Faites un commit et push sur la branche
preprod - La CI/CD va se déclencher automatiquement
- Vous devriez recevoir une notification Discord :
- ✅ Embed vert si le build réussit
- ❌ Embed rouge si le build échoue
Format des Notifications
Notification de Succès (Vert)
✅ CI/CD Pipeline Success
Deployment completed successfully!
Repository: David/xpeditis2.0
Branch: preprod
Commit: [abc1234...] (lien cliquable)
Backend Image: rg.fr-par.scw.cloud/weworkstudio/xpeditis-backend:preprod
Frontend Image: rg.fr-par.scw.cloud/weworkstudio/xpeditis-frontend:preprod
Workflow: [CI/CD Pipeline] (lien vers les logs)
Notification d'Échec (Rouge)
❌ CI/CD Pipeline Failed
Deployment failed! Check the logs for details.
Repository: David/xpeditis2.0
Branch: preprod
Commit: [abc1234...] (lien cliquable)
Workflow: [CI/CD Pipeline] (lien vers les logs)
Informations Incluses
Chaque notification contient :
- Repository : Nom du dépôt Git
- Branch : Branche où le build a été déclenché
- Commit : SHA du commit avec lien vers le commit sur Gitea
- Backend/Frontend Images : Noms complets des images Docker (succès uniquement)
- Workflow : Lien direct vers les logs de la CI/CD pour débugger
Personnalisation
Pour personnaliser les notifications, éditez le fichier .github/workflows/ci.yml :
Changer la couleur des embeds
# Succès (vert)
"color": 3066993
# Échec (rouge)
"color": 15158332
# Autres couleurs disponibles :
# Bleu : 3447003
# Jaune : 16776960
# Orange : 15105570
Ajouter des champs
Ajoutez de nouveaux champs dans le tableau fields :
{
"name": "Nom du champ",
"value": "Valeur du champ",
"inline": true # true = affichage côte à côte
}
Ajouter un thumbnail ou une image
"thumbnail": {
"url": "https://example.com/image.png"
},
"image": {
"url": "https://example.com/large-image.png"
}
Dépannage
Les notifications ne sont pas envoyées
- Vérifiez que le secret
DISCORD_WEBHOOK_URLest bien configuré dans Gitea - Vérifiez que l'URL du webhook est correcte et commence par
https://discord.com/api/webhooks/ - Vérifiez les logs de la CI/CD pour voir s'il y a une erreur dans le step "Send Discord notification"
L'URL du webhook est invalide
- L'URL doit être complète :
https://discord.com/api/webhooks/ID/TOKEN - Ne partagez JAMAIS cette URL publiquement (elle donne accès à votre canal Discord)
Les embeds ne s'affichent pas correctement
- Vérifiez le format JSON dans le fichier
.github/workflows/ci.yml - Testez votre JSON avec un outil comme https://leovoel.github.io/embed-visualizer/
Sécurité
⚠️ IMPORTANT :
- Ne commitez JAMAIS l'URL du webhook directement dans le code
- Utilisez toujours le secret
DISCORD_WEBHOOK_URL - Si vous pensez que l'URL a été compromise, régénérez-la dans Discord
Documentation Discord
Pour plus d'informations sur les webhooks Discord :