fix: simplify Jenkins triggers to use only pollSCM + add setup docs
This commit is contained in:
parent
c0ad39dbe9
commit
c92d2c32e9
95
JENKINS_AUTO_TRIGGER_SETUP.md
Normal file
95
JENKINS_AUTO_TRIGGER_SETUP.md
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
# 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-backend
|
||||
2. Settings > Webhooks > Add Webhook > Gitea
|
||||
3. Configurer:
|
||||
- **Target URL**: `http://jenkins-url/generic-webhook-trigger/invoke?token=the-tip-top-backend-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-backend`
|
||||
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-backend.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
|
||||
13
Jenkinsfile
vendored
13
Jenkinsfile
vendored
|
|
@ -5,19 +5,6 @@ pipeline {
|
|||
triggers {
|
||||
// Vérifie les changements toutes les minutes (polling SCM)
|
||||
pollSCM('* * * * *')
|
||||
|
||||
// Ou utiliser un webhook Gitea (recommandé)
|
||||
// Le webhook doit être configuré dans Gitea pour pointer vers:
|
||||
// http://jenkins-url/generic-webhook-trigger/invoke?token=the-tip-top-backend-token
|
||||
GenericTrigger(
|
||||
genericVariables: [
|
||||
[key: 'ref', value: '$.ref']
|
||||
],
|
||||
causeString: 'Triggered by Gitea push',
|
||||
token: 'the-tip-top-backend-token',
|
||||
printContributedVariables: true,
|
||||
printPostContent: true
|
||||
)
|
||||
}
|
||||
|
||||
parameters {
|
||||
|
|
|
|||
1
package-lock.json
generated
1
package-lock.json
generated
|
|
@ -30,6 +30,7 @@
|
|||
"zod": "^4.1.12"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^9.39.0",
|
||||
"eslint": "^9.39.0",
|
||||
"jest": "^30.2.0",
|
||||
"nodemon": "^3.1.10",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user