On Thu, Oct 18, 2012 at 10:43:23AM -0700, xterm wrote:
> well, as i see it, this is what i believe to be the problem:
> 
> 1. the jenkins server and target start off with a channel (connection)
> 2. the channel is disconnected using:
> 2a. beforeDisconnect
> 2b. disonnect
> 2c. afterDisconnect
> 3. the vm is reverted to desired snapshot
> 4. the vm is powered on
> 5. waits for vmtools
> 6. islaunchsupported: launch
> 7. setChannel(in, out, tasklistener, channel.listener)
> 8. 

So the way I had worked with this problem is to have the VMs be
on-demand, so it went (since I had different groups, single VMs could be
used instead):
1. Jenkins says I want a 'buildhost-distroA-revert-on-boot' slave
2. Jenkins picks one of the VMs with that label, turns it on.
3. All VMs with that label are configured as revert-on-boot so that the
   first thing that happens is LabManger (esx under the hood) reverts to
   the snapshot and the second thing is it turns the VM on.
4. Jenkins connects with the slave

This is all off the top of my head and might differ slightly from
implementation, but it's the general idea behind it.

-- 
Tom

Reply via email to