[Buildbot-devel] 'latent' build host on network power switch
Andy Howell
andy at gamubaru.com
Mon Oct 15 03:20:50 UTC 2012
Hello,
I have a host thats only used once in awhile. Most of the time it functions more as a
heater and noise maker than anything else.
The machine is connected to a networked power switch. I've got a python class to turn the
power on and off.
I'm implementing a subclass of AbstractLatentBuildSlave to control it. The basic idea is
when start_instance is called, I check with the switch to make sure its turned on and ping
the host to check that its up. If its not powered up, I power it up and wait until I can
ping it.
I haven't quite worked out the shutdown aspect of it. I guess I'll have servlet on the
slave that stop_instance can poke when it wants to shut it down. I'll likely have a
mechanism for manual override, so that I can keep the slave up if needed.
I'm working on a unit test for it now, though it slow going trying to wrap me head around
testing deferreds and catching exceptions.
I used ec2buildslave as my template, though maybe I should have used libvirtbuildslave
instead. ec2buildslave uses deferToThread to bring up the machine.
Does this seem like a reasonable approach?
Thanks,
Andy
More information about the devel
mailing list