Maybe this helps 
https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins


On Monday, 31 July 2017 14:49:16 UTC-4, Sam K wrote:
>
> I don't have all the answers, but most are embedded.  Firstly are you 
> using the freestyle jobs or declarative groovy pipeline jobs? 
>
> On Monday, July 31, 2017 at 9:53:43 AM UTC-7, Mark wrote:
>>
>> Hi. Hoping someone here might be able to help or point me in the right 
>> direction. I've been reading docs for many hours, and I can't find any 
>> examples similar to what I'm trying to do.
>>
>> Here's what I want to do at a high level:
>>
>> I have multiple nodes, some have the "windows" label, others the "linux" 
>> label.
>>
> >> You can add more than one label.  You can call it windows-1, Linux-1 
> and use them in your pipelines.   
>
>>
>> I want to run an end-to-end test that requires a server running on a 
>> windows node, and a client running automated tests on a linux node against 
>> the windows server.
>>
>> First, run checkouts in parallel on both a windows node and a linux node. 
>> The windows node needs to checkout 3 three svn repos (ideally, in 
>> parallel), while the linux node needs to checkout 2 svn repos (ideally, in 
>> parallel).
>>
> >> You can add more than one scm repo in each job. Have a kick off job 
> that calls both the freestyle jobs.  then checkouts can happen in parallel. 
>  Or if you're using declarative pipeline, you can use the parallel blocks 
> to checkout on both in parallel.  
> https://github.com/jenkinsci/pipeline-model-definition-plugin/wiki/Parallelism
>
>>
>> Once the the checkout stage is done, on the windows node, build the 
>> server, then run the server. 
>>
>> While the server continues to run on the windows node, run tests on the 
>> linux node. (Note that my client doesn't need an explicit build stage).
>>
>  
>
>> Once the tests complete, generate tests report on the linux node and stop 
>> the server on the windows node.
>>
>
>> - Is this pipeline possible? This seems like a pretty common scenario 
>> (i.e. checkout on server + client in parallel, build, start server, run 
>> tests on client).
>>
> >> Yes, its possible.   
>
>> - Is there any way to "reuse" a node allocated earlier? In my case, I 
>> need to ensure that the same windows and linux nodes are always used and 
>> the workspaces remain intact until the pipeline completes.
>>
> >> labels is the best way to use the same nodes
>
>> - What's the best way to synchronize the two nodes after the parallel 
>> checkouts, 
>>
> >> Synchonize what??  
>
>> then ensure that the same nodes/workspaces continue to be used when the 
>> windows server runs and the linux client tests execute?
>>
> >> You can use labels on each and choose that label.  Also, for workspace 
> you can use custom workspace names which will be used over and over again. 
>   
>
>>
>> Thanks!
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/8d9a81f1-f2db-4e0e-8836-2796f0915fdc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to