xpeditis2.0/DISCORD_NOTIFICATIONS.md
David 0ddd57c5b0
All checks were successful
CI/CD Pipeline / Backend - Build, Test & Push (push) Successful in 2m41s
CI/CD Pipeline / Frontend - Build, Test & Push (push) Successful in 11m38s
CI/CD Pipeline / Integration Tests (push) Has been skipped
CI/CD Pipeline / Deployment Summary (push) Successful in 1s
CI/CD Pipeline / Discord Notification (Failure) (push) Has been skipped
CI/CD Pipeline / Discord Notification (Success) (push) Successful in 2s
docs: add Discord notifications setup guide
Complete guide for configuring Discord webhooks to receive CI/CD notifications.

Includes:
- Step-by-step Discord webhook creation
- Gitea secret configuration
- Notification format examples
- Customization options
- Troubleshooting section
- Security best practices

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 14:42:39 +01:00

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

  1. Ouvrez Discord et allez dans le serveur où vous voulez recevoir les notifications
  2. Cliquez sur les paramètres du canal (roue dentée à côté du nom du canal)
  3. Allez dans IntégrationsWebhooks
  4. Cliquez sur Nouveau Webhook
  5. Donnez-lui un nom (ex: "Xpeditis CI/CD")
  6. Choisissez le canal de destination
  7. Copiez l'URL du Webhook (elle ressemble à https://discord.com/api/webhooks/...)

2. Configurer le Secret dans Gitea

  1. Allez dans votre repository Gitea : https://gitea.ops.xpeditis.com/David/xpeditis2.0
  2. Cliquez sur Settings (Paramètres)
  3. Dans le menu latéral, cliquez sur Secrets
  4. Cliquez sur Add Secret (Ajouter un secret)
  5. Remplissez :
    • Name : DISCORD_WEBHOOK_URL
    • Value : Collez l'URL du webhook Discord copiée précédemment
  6. Cliquez sur Add Secret

3. Tester la Configuration

Pour tester que tout fonctionne :

  1. Faites un commit et push sur la branche preprod
  2. La CI/CD va se déclencher automatiquement
  3. 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

  1. Vérifiez que le secret DISCORD_WEBHOOK_URL est bien configuré dans Gitea
  2. Vérifiez que l'URL du webhook est correcte et commence par https://discord.com/api/webhooks/
  3. 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

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 :