Since posting, I've seen that the Metadata 
plugin<https://wiki.jenkins-ci.org/display/JENKINS/Metadata+plugin>would be a 
great way to attach the key/values to the slaves instead of the 
Slave Setup Plugin. I would still be happy to hear of any ideas on how I 
can improve this.

- David

On Tuesday, December 18, 2012 9:55:06 PM UTC+2, David Resnick wrote:
>
> This is my use case:
>
> I have tests that require a collection of machines to run. There are 
> different types of machine collections, with 1 or more instances of each 
> type. Each collection can be used by only one driving set of tests at a 
> time.
>
> The tests themselves do not run in the collection of machines; they can 
> all run via ssh on the same host (or different ones, it makes no difference 
> to me). Once the tests are finished I would like to publish reports that 
> they generate.
>
> So the tests could run on a regular Jenkins ssh slave with a bunch of 
> executors. But at the same time I would like to define each collection of 
> machines as a "slave", giving each collection type a different label so 
> that test jobs would queue and wait for the appropriate type. Essentially, 
> each machine collection slave is just a set of key value pairs (of 
> credentials and other bits of info) to pass to the dumb ssh slave and used 
> as test parameters, telling the tests where to run.
>
> I was wondering if there are plugins that allow a) defining a slave as a 
> set of key value pairs and b) defining a requirement for a job to have 
> exclusive access to 2 types of slaves before it will run on one of them. I 
> can't recall seeing any additional types of slaves apart from the dumb one 
> or VMs controlled by the vSphere Cloud Plugin. Are there any more?
>
> One solution I thought of is to define an ssh slave for each machine 
> collection (they could all be on the same host), each with 1 executor and 2 
> labels: one generic (i.e. perf) and the other specific (i.e. perf1). Then 
> there would be one Slave Setup 
> Plugin<https://wiki.jenkins-ci.org/display/JENKINS/Slave+Setup+Plugin>configuration
>  per slave, each with a label matching the specific slave 
> labels (i.e. perf1) that would copy a properties file to the root of the 
> slave directory tree. One open question I have is where the Slave Setup 
> Plugin copies files to; if it is to an absolute path then I wouldn't be 
> able to reuse the same host for a number of slaves.
>
> Any thoughts or suggestions on how this could be set up (or what might be 
> missing or which plugin almost fits to set this up) would be highly 
> appreciated!
>
> Thanks,
> David
>

Reply via email to