[Buildbot-devel] Forcing on a given buildslave
Georges Racinet
gracinet at anybox.fr
Mon Sep 3 13:34:40 UTC 2012
On 09/02/2012 03:36 PM, Dustin J. Mitchell wrote:
> On Sat, Sep 1, 2012 at 7:32 AM, Georges Racinet<gracinet at anybox.fr> wrote:
>> Can someone confirm that there is currently (say in 0.8.7 branch) no
>> way to force a build on a given buildslave ? This a feature I'd really
>> find very useful.
>
> This is correct.
Thank you, then I'd like to introduce it.
The use case would be to help debug if a slave goes wrong, or to
validate that a new slave performs as expected, not to make it a normal
operation of buildbot should be to distribute builds among all slaves
registered for that builder (in our setups it's an automatic process
based on slaves capabilities).
Setting a up a testing buildbot and have new or problematic slaves
attach to it is of course an option, but it's cumbersome. I've setup
one, but I've never used it apart for experiments about buildbot itself.
I used to believe that maybe setting the 'buildslave' property would
force on a precise slave (if available). That proved out wrong, but
wouldn't it be a simple way to present it ? The corollary would of
course be that a rebuild always takes place on the same slave.
From what I've read in process.builder, inmplemetnation would be a bit
more complicated than changing the default behavior when there's no
nextSlave, because the properties aren't available until a BuildRequest
has been sucessfully claimed.
But after a quick look, I don't see why the slave selection should occur
before that, so that seems to be doable. What do you think ?
Maybe the most generic thing to do is to allow nextSlave to accept a
dict of properties (with a fallback if it does not for backwards
compatibility) and provide a nextSlave that reacts to the buildslave
property.
Also, maybe there are problems with latent slaves to be anticipated. I
have no experience with them,
Regards
--
Georges Racinet
Anybox SAS, http://anybox.fr
Bureau: 09 53 53 72 97 Portable: 06 51 32 07 27
GPG: 0x33AB0A35, sur serveurs publics
More information about the devel
mailing list