<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><br></div><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">http://docs.buildbot.net/latest/manual/cfg-buildsteps.html#dynamic-trigger</a></div><div><br></div><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">https://github.com/tardyp/buildbot_travis/blob/master/buildbot_travis/steps/spawner.py</a><br></div><div><br></div><div>Have fun!</div><div>Pierre</div></div>