96 lines
2.8 KiB
Markdown
96 lines
2.8 KiB
Markdown
# Configuration du Declenchement Automatique Jenkins
|
|
|
|
## Probleme Actuel
|
|
Le pipeline Jenkins ne se lance pas automatiquement apres un push Git.
|
|
|
|
## Solutions Possibles
|
|
|
|
### Solution 1: Verifier le Plugin Generic Webhook Trigger
|
|
|
|
1. Aller dans Jenkins > Manage Jenkins > Manage Plugins
|
|
2. Chercher "Generic Webhook Trigger Plugin"
|
|
3. Si pas installe, l'installer et redemarrer Jenkins
|
|
|
|
### Solution 2: Configuration du Webhook dans Gitea
|
|
|
|
#### Etape 1: Creer le webhook dans Gitea
|
|
1. Aller sur https://gitea.wk-archi-o24a-15m-g3.fr/wkadmin/the-tip-top-frontend
|
|
2. Settings > Webhooks > Add Webhook > Gitea
|
|
3. Configurer:
|
|
- **Target URL**: `http://jenkins-url/generic-webhook-trigger/invoke?token=the-tip-top-frontend-token`
|
|
- **HTTP Method**: POST
|
|
- **POST Content Type**: application/json
|
|
- **Secret**: (laisser vide)
|
|
- **Trigger On**: Push events
|
|
- **Branch filter**: `dev` (ou `*` pour toutes les branches)
|
|
- **Active**: Coche
|
|
|
|
4. Cliquer sur "Add Webhook"
|
|
|
|
#### Etape 2: Tester le webhook
|
|
1. Faire un commit et push
|
|
2. Dans Gitea, aller dans Settings > Webhooks
|
|
3. Cliquer sur le webhook cree
|
|
4. Scroller vers le bas pour voir "Recent Deliveries"
|
|
5. Verifier que la reponse est 200 OK
|
|
|
|
### Solution 3: Verifier la Configuration SCM dans Jenkins
|
|
|
|
1. Aller dans le job Jenkins: `the-tip-top-frontend`
|
|
2. Configure > Build Triggers
|
|
3. Verifier que "Poll SCM" est coche avec: `* * * * *`
|
|
4. Verifier que "Generic Webhook Trigger" est configure
|
|
|
|
### Solution 4: Forcer un Scan Manuel (Temporaire)
|
|
|
|
En attendant que le webhook fonctionne:
|
|
1. Aller dans le job Jenkins
|
|
2. Cliquer sur "Build with Parameters"
|
|
3. Choisir ENV = dev
|
|
4. Cliquer sur "Build"
|
|
|
|
### Solution 5: Utiliser un Simple Webhook au lieu de Generic Webhook
|
|
|
|
Si le plugin Generic Webhook Trigger pose probleme, modifier le Jenkinsfile:
|
|
|
|
```groovy
|
|
triggers {
|
|
// Polling SCM toutes les minutes
|
|
pollSCM('* * * * *')
|
|
|
|
// OU utiliser le trigger Gitea (plus simple)
|
|
// Pas besoin de plugin supplementaire
|
|
}
|
|
|
|
properties([
|
|
pipelineTriggers([
|
|
[$class: 'GitHubPushTrigger']
|
|
])
|
|
])
|
|
```
|
|
|
|
Puis dans Gitea webhook, utiliser:
|
|
- **Target URL**: `http://jenkins-url/git/notifyCommit?url=https://gitea.wk-archi-o24a-15m-g3.fr/wkadmin/the-tip-top-frontend.git`
|
|
|
|
## Verification
|
|
|
|
Pour verifier que le trigger fonctionne:
|
|
|
|
1. Faire un petit changement (ex: ajouter un commentaire dans README.md)
|
|
2. Commit et push
|
|
3. Attendre 1 minute maximum
|
|
4. Verifier dans Jenkins si un nouveau build demarre
|
|
|
|
## Logs de Debug
|
|
|
|
Si le probleme persiste, verifier les logs Jenkins:
|
|
1. Jenkins > Manage Jenkins > System Log
|
|
2. Chercher les erreurs liees a "SCM" ou "webhook"
|
|
|
|
## Contact
|
|
|
|
Si aucune solution ne fonctionne:
|
|
- Verifier que Jenkins a acces au repo Git (credentials)
|
|
- Verifier les firewalls entre Gitea et Jenkins
|
|
- Verifier que l'URL du webhook est accessible depuis Gitea
|