6

Ho diversi progetti configurati in Jenkins che hanno dipendenze l'uno sull'altro (usando l'opzione 'build after'). Ora voglio che ogni progetto attenda che tutte le sue dipendenze finiscano prima di iniziare a costruire.Jenkins: attendere che vengano completate più dipendenze prima di costruire

Esempio:

Project: A 
Project: B - Depencies: A 
Project: C - Depencies: A, B 

Quando costruisco A, quindi le generazioni di B e C saranno attivati. Tuttavia, desidero creare solo C dopo che A e B hanno terminato la costruzione. Invece, al momento il progetto C costruirà due volte, una volta dopo che A è terminato, e una seconda volta dopo che B ha finito.

Come posso configurare le dipendenze del progetto Jenkin in modo che sia possibile ottenerlo?

Ps.

Prima che qualcuno accenni al plugin Join: l'ho guardato e non posso dire che sia una soluzione soddisfacente.

+0

Questo è un problema che Maven (e tecnologie simili come Ant edera) è stato progettato per risolvere. Ogni build è resa indipendente l'una dall'altra attraverso l'uso di un repository condiviso di artefatti costruiti. Costruire server come Jenkins sono in grado di determinare l'ordine di build e attivare automaticamente build downstream che dipendono da un artefatto di una particolare build. Non una semplice risposta alla tua qustion, ma qualcosa da considerare, altrimenti sei bloccato con il plugin Join :-( –

+0

No, l'unico modo per risolvere questo problema usando Maven sarebbe quello di renderli tutti i sottomoduli di un singolo progetto. Jenkins non ha intenzione di risolvere l'ordine di costruzione assoluto.Se si configura Jenkins per essere innescato da una build dell'ultimo artefatto, il problema che ho descritto si verificherà ancora – dstibbe

+0

Acquista il documento di Maven. Vedere "Creazione automatica del concatenamento .." sezione del documento di Jenkins: https://wiki.jenkins-ci.org/display/JENKINS/Building+a+maven2+project Molto molto utile quando i progetti DEV utilizzano le versioni di snapshot di altri progetti, senza questa funzione, l'uso di Le istantanee di Maven sono molto discutibili: un grande vantaggio per l'utilizzo di Jenkins –

risposta

Problemi correlati