Hi, If you use the Build step / Builder "Trigger/call builds on other projects" and check the checkbox "Block until the triggered project finish their builds", then the "parent" build will wait for the "child" to finish, and process it's exit status as instructed by the three drop-down lists.
Hope that will work for you. :) cheers 2013/1/15 Faisal Faizan <faisalfai...@gmail.com> > Hi Josselin, > > Thanks for your detailed response. I did all these steps as you suggested, > but could not find a way to make the build trigger step as blocking. > Also I have configured "poll SCM" step in build trigger for all the three > projects. > And for Project 2 and Project 1 I have additional build trigger step as > you suggested(depend on Project 3 and Project 2 respectively). > > I think if am able to figure how to block a build, this can be cracked. > a > Regards > Faisal > > > On Mon, Jan 14, 2013 at 1:10 PM, Josselin Pierre <pierre.j...@gmail.com>wrote: > >> Hi, >> >> On the theorical base, the dependencies should be the other way round. >> The continuous integration principle is that dependencies should trigger >> the build of the projects that uses these dependencies, not the other way >> round... >> But of course, there are always some cases that don't match such a rule. >> >> For your case, I'd say the easiest is to >> - define a Job that builds Project 3 and publish its artifacts >> - define a Job that builds Project 2 : it's first step should be >> "Trigger/build another job", triggering the Project 3's job (you can >> configure the step to be blocking) ; the second steps retrieve the >> artifacts ; the third steps actually builds Project 2 >> - Same principle for the Project 1 job, you only need to have trigger the >> Project 2's job, that will trigger Project 3's job, and so on. >> >> One thing to keep it mind though : you need to have at least 3 agents >> 'cause the three jobs will run in "parallel". >> >> This is kind of a dirty trick since it's outside of Jenkins "core >> principles", but it's easy enough and should work flawlessly. >> >> Hope that helped. >> >> >> 2013/1/12 Faisal Faizan <faisalfai...@gmail.com> >> >>> Hi Michael, >>> >>> I have a similar situation but a little more complex, am curious to know >>> if you found a solution which I could utilize for my case. >>> >>> Project 1 is dependent on artifacts from Project 2 & Project 3. >>> Project 2 is dependent on artifacts from Project 3. >>> Project 3 is independent. >>> >>> 1) When a commit is made to Project 3, only it should be build. >>> 2) When a commit is made to Project 2, it should first build Project 3 >>> and then use the artifacts from it and build Project 2. >>> 3) When a commit is made to Project 1, it should first build Project 2 & >>> Project 3 and then use the artifacts from it and build Project 1. >>> >>> Regards >>> Faisal >>> >>> On Thursday, 30 August 2012 14:14:03 UTC+5:30, mpapo - Michaël Pailloncy >>> wrote: >>>> >>>> Hi ! >>>> >>>> Currently, we have several jobs building projects dependent in each >>>> other : Project1 on Job1 has dependencies to Project2 et Project3 on Job2 >>>> et Job3. >>>> When we want to release Project1, we must release Project2 and Project3 >>>> before releasing Project1. >>>> >>>> Is there a plugin or a best practice to automatically release Project2 >>>> and Project3 before Project1 ? >>>> >>>> >>>> Thanks in advance ! >>>> Michaël >>>> >>> >> >