2015-08-07 14 views
6

Abbiamo un repository Github aziendale interno e ho più rami di funzionalità. Sto affrontando un problema con l'attivazione di una build su un ramo specifico. Ho configurato i lavori per ciascuna delle diramazioni delle funzioni. C'è un lavoro jenkins per un ramo di funzionalità. La prima volta che eseguo il commit di un codice, attiva anche build per lavori con altri rami.Jenkins git commit per specifici trigger di ramo crea lavori anche per altri rami

Passaggi per riprodurre il problema:

1.We hanno un Github interna per le imprese. Per il mio repo, ho webhook setup per github come di seguito

Settings -> Webhooks & Services -> Services 
Select Jenkins (GitHub plugin) 
Jenkins Hook Url: http://************/jenkins/github-webhook/ 

2.Per i miei 3 filiali in github repo: Branch1, Branch2, branch3, ho creato tre posti di lavoro a Jenkins: job1, job2, job3 con SCM configurati correttamente come sotto

Source Code Management: 
Repo URL: [email protected]********/********.git 
Branches to Build: refs/heads/BRANCH_NAME 

Build Trigger: Build when a change is pushed to GitHub 

3.Sul codice di commit al mio ramo: branch1. Attiva tutti i 3 lavori in jenkins: Job1, Job2, Job3. Nota: questa è la prima volta che i lavori sono stati attivati.

4.Sun codice di attivazione per la seconda volta alla filiale: branch1. Fa scattare solo Job1 in jenkins.

Sembra che per la prima volta tutti i lavori vengano eseguiti per il repository, indipendentemente dal ramo.

Dettagli sulla mia configurazione Jenkins: Jenkins Versione: 1.565.1, GitHub plugin: 1.9.1

Qualsiasi aiuto/consiglio per risolvere questo problema è apprezzato.

FYI: Ho provato passaggi elencati http://kohsuke.org/2011/12/01/polling-must-die-triggering-jenkins-builds-from-a-git-hook/

risposta

0

Fare uno script con il seguente comando (supponendo che il GitHub SO è linux)

curl http://yourserver/jenkins/git/notifyCommit?url=<URL of the Git repository> 

mettere questo script in ./git/hooks

Nel tuo jenkins i lavori cambiano

dal "Costruisci n un cambiamento è spinto a GitHub"

Per "Poll SCM"

Non creare qualsiasi orario nel sondaggio SCM