<div dir="ltr"><div>On Fri, Mar 11, 2016 at 4:36 PM, Pierre Tardy <span dir="ltr"><<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>></span> wrote:<br></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hi Ed,<div><br></div><div>Buildbot is the perfect fit for your usecase, and buildbot nine is an even better fit (because the UI has great improvement on displaying trigger step)</div></div></blockquote><div><br></div><div>That's brilliant.  Thank you.  I hadn't realised about version 9 (there doesn't seem to be a link to the 'latest' version from the 'current' version, though I may have missed it), but now that I know about it, I'll play with that one. </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>Indeed, your tricky part is #3, this can be performed via a trigger step, as you said.</div><div>I would advise you to create one builder (say P) for all the variations, and to parametrise it with properties. Then, you can use dynamic_trigger create your builds, and choose how you mixup your properties/parameters for each build</div><div><a href="http://docs.buildbot.net/latest/manual/cfg-buildsteps.html#dynamic-trigger" target="_blank">http://docs.buildbot.net/latest/manual/cfg-buildsteps.html#dynamic-trigger</a></div></div></blockquote><div><br></div><div>I don't think I've entirely understood this yet, but I'm spending today working on it and I'm sure once I've had a go, it'll make more sense.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>For step 4, just use the waitForFinish=True in the TriggerStep, and it will wait for the result, and concatenate them so that the result of the step is the worst result of all the triggered builds.</div><div><br></div><div>If you attach your 10 slaves to the P builder, then buildbot will take care of running all your parallel builds in those 10 slaves, when one finish, it will take another from the queue.</div><div><br></div><div>You can look at buildbot travis, which implement a dynamic trigger step</div><div><a href="https://github.com/tardyp/buildbot_travis/blob/master/buildbot_travis/steps/spawner.py" target="_blank">https://github.com/tardyp/buildbot_travis/blob/master/buildbot_travis/steps/spawner.py</a></div></div></blockquote><div><br></div><div> Thanks, this is exactly what I wanted.  I'll have a good look through it.</div><div><br></div><div>Ed</div></div></div></div>