Re: How to group and sort tests and run in parallel without Parallel Test Executor Plugin

2017-08-15 Thread Viacheslav Dubrovskyi

Hi

15.08.2017 03:11, Michael Pailloncy пишет:

Hi, thanks for the full explanation of your use case :-)
How do you keep the Groovy file containing your previous builds result 
? inside an agent's workspace ?


No, as artifact:
def stat_file = "suite_statics.groovy"
for (t2 in behatList) {
suitesStat.put(behatList[t][t2], duration_s)
}
writeFile file: "stats/${stat_file}", text: 
"suitesStat=${suitesStat}\nreturn this;"


and then save stats/${stat_file} as artifact




2017-08-09 14:52 GMT+02:00 Viacheslav Dubrovskyi >:


Hi Michael,

We have list of tests which I would like run in parallel. The
Parallel Test Executor Plugin doesn't work in our case, because we
don't use junit and the list of tests (behatList) is result of
script work. I can't run all tests on one node because it will
take about 16 hours.

So I save results of previous builds to groovy file as map and
load it before (suitesStat) . Then I group and sort tests
(sortSuites(suites, suites_time) in previous post). And then I use
this list for create parallel run.


def behatList =['AutoSuiteSet_0', 'AutoSuiteSet_1',
'AutoSuiteSet_2', 'AutoSuiteSet_3', 'AutoSuiteSet_4',
'AutoSuiteSet_5']
def suitesStat=[AutoSuiteSet_0:0, AutoSuiteSet_1:1,
AutoSuiteSet_2:2, AutoSuiteSet_3:3, AutoSuiteSet_4:4,
AutoSuiteSet_5:5]
behatList2=sortSuites(behatList, suitesStat)

stage("test") {
behatList=sortSuites(behatList, suitesStat)
def enviroments_b = [failFast: failFirstError]
for (int j = 0; j < behatList.size() ; j++) {
int index_b=j
enviroments_b["TestEnv behat=${behatList[index_b]}"] = {
  node('behat') {
 for (int j2 = 0; j2 < behatList[index_b].size() ; j2++) {
int index_b2=j2
sh "./run_test ${behatList[index_b][index_b2]}"
 }
  }
}
}
parallel enviroments_b
}
...



06.08.2017 17:47, Michael Pailloncy пишет:
However, what do you want to achieve exactly ? 


-- 
WBD,

Viacheslav Dubrovskyi

-- 
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 jenkinsci-users+unsubscr...@googlegroups.com
.
To view this discussion on the web visit

https://groups.google.com/d/msgid/jenkinsci-users/bad445be-212a-6f0b-7001-0c9212761be1%40gmail.com

.
For more options, visit https://groups.google.com/d/optout
.


--
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 jenkinsci-users+unsubscr...@googlegroups.com 
.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPO77c3TeEWZEsxNHXb-y0nRg%3DZ5%2BVnveqVcZuiRBj7GkttjBQ%40mail.gmail.com 
.

For more options, visit https://groups.google.com/d/optout.


--
WBD,
Viacheslav Dubrovskyi

--
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 jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/50260078-77cc-c360-ef06-b5de745a565d%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: How to group and sort tests and run in parallel without Parallel Test Executor Plugin

2017-08-14 Thread Michael Pailloncy
Hi, thanks for the full explanation of your use case :-)
How do you keep the Groovy file containing your previous builds result ?
inside an agent's workspace ?

2017-08-09 14:52 GMT+02:00 Viacheslav Dubrovskyi :

> Hi Michael,
>
> We have list of tests which I would like run in parallel. The Parallel
> Test Executor Plugin doesn't work in our case, because we don't use junit
> and the list of tests (behatList) is result of script work. I can't run
> all tests on one node because it will take about 16 hours.
>
> So I save results of previous builds to groovy file as map and load it
> before (suitesStat) . Then I group and sort tests (sortSuites(suites,
> suites_time) in previous post). And then I use this list for create
> parallel run.
>
> def behatList =['AutoSuiteSet_0', 'AutoSuiteSet_1', 'AutoSuiteSet_2',
> 'AutoSuiteSet_3', 'AutoSuiteSet_4', 'AutoSuiteSet_5']
> def suitesStat=[AutoSuiteSet_0:0, AutoSuiteSet_1:1, AutoSuiteSet_2:2,
> AutoSuiteSet_3:3, AutoSuiteSet_4:4, AutoSuiteSet_5:5]
> behatList2=sortSuites(behatList, suitesStat)
>
> stage("test") {
> behatList=sortSuites(behatList, suitesStat)
> def enviroments_b = [failFast: failFirstError]
> for (int j = 0; j < behatList.size() ; j++) {
> int index_b=j
> enviroments_b["TestEnv behat=${behatList[index_b]}"] = {
>   node('behat') {
>  for (int j2 = 0; j2 < behatList[index_b].size() ; j2++) {
> int index_b2=j2
> sh "./run_test ${behatList[index_b][index_b2]}"
>  }
>   }
> }
> }
> parallel enviroments_b
> }
> ...
>
>
>
> 06.08.2017 17:47, Michael Pailloncy пишет:
>
> However, what do you want to achieve exactly ?
>
>
> --
> WBD,
> Viacheslav Dubrovskyi
>
> --
> 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 jenkinsci-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/jenkinsci-users/bad445be-212a-6f0b-7001-0c9212761be1%40gmail.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAPO77c3TeEWZEsxNHXb-y0nRg%3DZ5%2BVnveqVcZuiRBj7GkttjBQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: How to group and sort tests and run in parallel without Parallel Test Executor Plugin

2017-08-09 Thread Viacheslav Dubrovskyi

Hi Michael,

We have list of tests which I would like run in parallel. The Parallel 
Test Executor Plugin doesn't work in our case, because we don't use 
junit and the list of tests (behatList) is result of script work. I 
can't run all tests on one node because it will take about 16 hours.


So I save results of previous builds to groovy file as map and load it 
before (suitesStat) . Then I group and sort tests (sortSuites(suites, 
suites_time) in previous post). And then I use this list for create 
parallel run.



def behatList =['AutoSuiteSet_0', 'AutoSuiteSet_1', 'AutoSuiteSet_2', 
'AutoSuiteSet_3', 'AutoSuiteSet_4', 'AutoSuiteSet_5']
def suitesStat=[AutoSuiteSet_0:0, AutoSuiteSet_1:1, AutoSuiteSet_2:2, 
AutoSuiteSet_3:3, AutoSuiteSet_4:4, AutoSuiteSet_5:5]

behatList2=sortSuites(behatList, suitesStat)

stage("test") {
behatList=sortSuites(behatList, suitesStat)
def enviroments_b = [failFast: failFirstError]
for (int j = 0; j < behatList.size() ; j++) {
int index_b=j
enviroments_b["TestEnv behat=${behatList[index_b]}"] = {
  node('behat') {
 for (int j2 = 0; j2 < behatList[index_b].size() ; j2++) {
int index_b2=j2
sh "./run_test ${behatList[index_b][index_b2]}"
 }
  }
}
}
parallel enviroments_b
}
...



06.08.2017 17:47, Michael Pailloncy пишет:
However, what do you want to achieve exactly ? 


--
WBD,
Viacheslav Dubrovskyi

--
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 jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/bad445be-212a-6f0b-7001-0c9212761be1%40gmail.com.
For more options, visit https://groups.google.com/d/optout.