Build pipelines, delayed stages.

366 views
Skip to first unread message

Nigel Magnay

unread,
Nov 30, 2011, 10:51:03 AM11/30/11
to jenkins...@googlegroups.com
I'm wondering if anyone else has some neat solution to this, or if I should just build a plugin, or there's one already I haven't noticed.

We have a (git) codebase, and a jenkins job. Part of the job is a biiiig testsuite, that takes a long time.

I split this up into two jenkins jobs

proj-build
proj-test

and link them with a 'build project on success'.

But - I don't really need proj-test to run for every proj-build build - I'd rather say "build proj-test every 4 hours, IFF proj-build has had a successful build since then." - effectively a kind of 'build pipeline delayer' trigger.

I could totally decouple the two entirely, but we use (and like) the 'pipelined' view of jobs..

Gergely Nagy

unread,
Nov 30, 2011, 3:05:29 PM11/30/11
to jenkins...@googlegroups.com
On Wed, Nov 30, 2011 at 3:51 PM, Nigel Magnay <nigel....@gmail.com> wrote:
We have a (git) codebase, and a jenkins job. Part of the job is a biiiig testsuite, that takes a long time.
..
But - I don't really need proj-test to run for every proj-build build - I'd rather say "build proj-test every 4 hours, IFF proj-build has had a successful build since then." - effectively a kind of 'build pipeline delayer' trigger.

I could totally decouple the two entirely, but we use (and like) the 'pipelined' view of jobs..
+1
Thanks for asking this - i'm also interested in combining pipelines (parametrized triggers) and builds schedules. 
With a big tree of builds, one cannot always afford to run the whole tree all the time. 
Timing would be one option for pruning, how about some condition set up in parent builds?
(there is now a Conditional plugin).
any ideas are appreciated.  
Gergo

Youri

unread,
Nov 30, 2011, 4:16:08 PM11/30/11
to Jenkins Users
Maybe you can use the quiet period for this.

On Nov 30, 9:05 pm, Gergely Nagy <gsz...@gmail.com> wrote:

Geoff Bullen

unread,
Dec 1, 2011, 2:01:18 AM12/1/11
to jenkins...@googlegroups.com
Instead of building a plugin,  you could add this feature to the build pipeline plugin.  We'd love to incorporate it.

Cheers, Geoff
--
Geoff Bullen 
Centrum Systems 
Level 8, 5 Elizabeth Street 
Sydney 

  
0408 659 395 (m) 
02 9235 0516 (t)
 
http://www.centrumsystems.com.au

Grégory Boissinot

unread,
Dec 1, 2011, 6:13:43 AM12/1/11
to jenkins...@googlegroups.com
The XTrigger plugin (https://wiki.jenkins-ci.org/display/JENKINS/XTrigger+Plugin) meets your need.
And choose the BuildResutTrigger plugin (a sub plugin of the XTrigger plugin):
https://wiki.jenkins-ci.org/display/JENKINS/BuildResultTrigger+Plugin

This plugin lets you monitor a new build result of other jobs according their status for a schedule.

In your case, the build-result trigger plugin will be active in your test job and monitors your build job every 4hours (your cron expression value).
A new build of the test job will be scheduled only if there is a new success build for the build job.

Nigel Magnay

unread,
Dec 1, 2011, 6:29:15 AM12/1/11
to jenkins...@googlegroups.com
Thanks, looks ideal for us.

That's what I love about Jenkins - a plugin for every need!


2011/12/1 Grégory Boissinot <gregory....@gmail.com>
Reply all
Reply to author
Forward
0 new messages