[OpenAFS-devel] Re: slave suggestions for buildslaves?
Jason Edgecombe
jason@rampaginggeek.com
Thu, 20 Jun 2013 20:28:12 -0400
On 06/20/2013 02:47 PM, Jeffrey Hutzelman wrote:
> On Thu, 2013-06-20 at 12:25 -0500, Andrew Deason wrote:
>
>> I think more slaves should be used for either:
>>
>> - Solaris sparc platforms
>> - More platforms where libkrb5 is heimdal in a non-standard location,
>> or other "weird" things you can think of
>> - Adding more slaves for the "slow" platforms above, so buildbot
>> assigns build jobs to them round-robin (I forget the actual buildbot
>> terminology for this)
>
> Well, these are not mutually exclusive. If I can spin up a SPARC, it
> would certainly go to one of the SPARC platforms. It won't help with
> the slow x86 platforms, and neither will the other machines people have
> mentioned here.
>
> How easy is it to add and remove machines?
> How easy is it to set up the buildbot to round-robin jobs among
> equivalent machines?
>
> It seems like we could get more cycles if it were easy for people like
> me to say "here's a few machines, go use them", knowing we could just as
> easily pull them out of the pool and toss other ones in later.
>
It takes me 5-10 minutes to add a new slave to a builder for a build.
It's easy.
It's easy to add multiple slaves to a builder, and the slaves will be
used in parallel, but I think that slaves are use in the same order as
the config file and not as a round-robin.
If you want to change out slaves or have one go down, I think that's
fine with multiple slaves per builder. In this case, you could take out
a machine, bring up another, and configure it the same way without
needing the buildbot admin (me) to do anything.
My biggest concern about having multiple slaves in a builder is that the
slaves might have slightly different configurations which yield
inconsistent results. If that's fine with the other dev's, then you can
ignore this. If it's a concern, maybe we could use puppet or something
similar to keep things in sync.
To answer Andrew's question: Yes, the debian buildslave is on the same
VM guest as the buildmaster. As I understand, the buildmaster doesn't
consume many resources.
In the past, there was some discussion of moving the buildmaster to the
gerrit host in order to allow for automatically building release
tarballs on the slaves, but this didn't happen. Now, the coordination
requirement for this could probably be done with a messaging broker like
RabbitMQ.
Jason