# Configuration du Webhook Jenkins pour Auto-dĂ©ploiement ## 📋 Vue d'ensemble Le Jenkinsfile a Ă©tĂ© configurĂ© avec deux mĂ©thodes de dĂ©clenchement automatique : 1. **Polling SCM** (Simple mais moins efficace) 2. **Webhook Gitea** (RecommandĂ© - plus rapide et efficace) --- ## ⚙ Option 1 : Polling SCM (DĂ©jĂ  actif) Le pipeline vĂ©rifie automatiquement les changements **toutes les minutes**. **Avantages :** - ✅ Aucune configuration supplĂ©mentaire nĂ©cessaire - ✅ Fonctionne immĂ©diatement **InconvĂ©nients :** - ❌ DĂ©lai de dĂ©tection (jusqu'Ă  1 minute) - ❌ Charge sur le serveur Git --- ## 🚀 Option 2 : Webhook Gitea (RecommandĂ©) ### Configuration dans Gitea 1. **AccĂ©der aux paramĂštres du dĂ©pĂŽt :** - Aller sur : `https://gitea.wk-archi-o24a-15m-g3.fr/wkadmin/the-tip-top-frontend` - Cliquer sur **ParamĂštres** (Settings) → **Webhooks** 2. **CrĂ©er un nouveau webhook :** - Cliquer sur **Ajouter un Webhook** → **Gitea** - Remplir les champs suivants : ``` URL cible : http:///generic-webhook-trigger/invoke?token=the-tip-top-frontend-token MĂ©thode HTTP : POST Type de contenu : application/json Secret : (laisser vide ou utiliser un secret personnalisĂ©) ÉvĂ©nements dĂ©clencheurs : ☑ Push ☐ Create ☐ Delete ☐ Fork ☐ Issues ☐ Pull Request ☐ Release Actif : ☑ Oui ``` 3. **Remplacer `` par :** - L'URL de votre serveur Jenkins (ex: `jenkins.wk-archi-o24a-15m-g3.fr`) 4. **Tester le webhook :** - AprĂšs crĂ©ation, cliquer sur le webhook - Cliquer sur **Tester la livraison** - VĂ©rifier que le statut est **200 OK** --- ## 🔐 SĂ©curitĂ© Le token `the-tip-top-frontend-token` dans le Jenkinsfile protĂšge le webhook contre les dĂ©clenchements non autorisĂ©s. Pour changer le token : 1. Modifier la ligne dans `Jenkinsfile` : ```groovy token: 'votre-nouveau-token-secret' ``` 2. Mettre Ă  jour l'URL du webhook dans Gitea --- ## đŸ§Ș Tester le dĂ©clenchement automatique 1. Faire un commit et push : ```bash git add . git commit -m "test: trigger auto deployment" git push origin dev ``` 2. VĂ©rifier dans Jenkins : - Le build devrait dĂ©marrer automatiquement - Consulter les logs pour voir le message : `Triggered by Gitea push` --- ## 📊 Branches et Environnements Le pipeline dĂ©tecte automatiquement l'environnement selon la branche : | Branche | Environnement | Tag Docker | |-----------|---------------|---------------| | `dev` | dev | dev-latest | | `preprod` | preprod | preprod-latest| | `main` | prod | prod-latest | --- ## đŸ› ïž Plugin Jenkins requis Pour utiliser le webhook avec `GenericTrigger`, assurez-vous que le plugin suivant est installĂ© : - **Generic Webhook Trigger Plugin** Installation : 1. Jenkins → Manage Jenkins → Manage Plugins 2. Onglet "Available" → Rechercher "Generic Webhook Trigger" 3. Installer et redĂ©marrer Jenkins --- ## 📝 Notes - Le polling SCM (`* * * * *`) restera actif comme solution de secours - Vous pouvez le dĂ©sactiver une fois le webhook configurĂ© en commentant la ligne `pollSCM` - Les deux mĂ©thodes peuvent coexister sans problĂšme --- ## ❓ Troubleshooting ### Le webhook ne se dĂ©clenche pas 1. VĂ©rifier les logs du webhook dans Gitea (ParamĂštres → Webhooks → Livraisons) 2. VĂ©rifier que Jenkins est accessible depuis le serveur Gitea 3. VĂ©rifier que le token correspond entre Jenkinsfile et l'URL du webhook 4. VĂ©rifier les logs Jenkins pour les erreurs ### Le build dĂ©marre mais Ă©choue 1. VĂ©rifier les credentials Docker registry 2. VĂ©rifier les permissions d'accĂšs au rĂ©pertoire de dĂ©ploiement 3. Consulter les logs dĂ©taillĂ©s du build dans Jenkins --- GĂ©nĂ©rĂ© avec [Claude Code](https://claude.com/claude-code)