[Buildbot-devel] using properties in factories to control creation of steps?

John Carr johnmdcarr at me.com
Sat Jul 6 15:42:10 UTC 2013


I agree with Dustin, but I have experimented in this area myself.

If you are comfortable with python + twisted, and are happy to accept this might need rewriting at some point due to API changes then check this out:

https://github.com/isotoma/buildbot_travis/blob/master/buildbot_travis/steps/create_steps.py

Buildbot_travis reads a yaml file out of the checkout and dynamically creates builds from it.

The TravisSetupSteps is a step that dynamically creates steps. It has some limitations (I think it has to be the last step in your build) (you can work around this by dynamically creating the rest of your steps, even when you know them up front).

The advantage of doing this is you get a log per step, which you do not get with a script. When a step fails you know which step. Without having to parse the combined logs, etc.

But it is using what I would consider private APIs - so you really need to be comfortable with the code to go this route.

Cheers
John

On 6 Jul 2013, at 15:50, "Dustin J. Mitchell" <dustin at v.igoro.us> wrote:

> Most often, this kind of complex functionality is best implemented in
> a slave-side script that runs in a single buildstep.
> 
> We've experimented with ways of making BuildFactories act like
> functions - with loops, conditional statements, and "calls" to other
> BuildFactories - but for the moment that's not possible beyond
> doStepIf and friends.
> 
> Dustin
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Windows:
> 
> Build for Windows Store.
> 
> http://p.sf.net/sfu/windows-dev2dev
> _______________________________________________
> Buildbot-devel mailing list
> Buildbot-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/buildbot-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20130706/0939ec18/attachment.html>


More information about the devel mailing list