f9a5ab5edba04e1a63c7de394327da94623955fa
[releng.git] / jjb / functest / functest-pi.yaml
1 ---
2 - functest-pi-containers: &functest-pi-containers
3     name: 'functest-pi-containers'
4     repo: '{repo}'
5     port: '{port}'
6     container: '{container}'
7     tag: '{tag}'
8
9 - functest-pi-params: &functest-pi-params
10     name: 'functest-pi-params'
11     tag:
12       - latest:
13           node: lf-pod4
14           DASHBOARD_URL: http://172.30.12.83
15       - zed:
16           node: lf-virtual9
17           DASHBOARD_URL: http://172.30.13.94
18       - yoga:
19           node: lf-pod4-3
20           DASHBOARD_URL: http://172.30.12.88
21       - xena:
22           node: laas-xena
23           DASHBOARD_URL: http://10.200.120.76
24       - wallaby:
25           node: lf-virtual6
26           DASHBOARD_URL: http://172.30.13.91
27       - arm-latest:
28           node: lf-pod4
29           DASHBOARD_URL: http://172.30.12.83
30       - arm-zed:
31           node: lf-virtual9
32           DASHBOARD_URL: http://172.30.13.94
33       - arm-yoga:
34           node: lf-pod4-3
35           DASHBOARD_URL: http://172.30.12.88
36       - xena-latest:
37           node: laas-xena
38           DASHBOARD_URL: http://10.200.120.76
39       - arm-wallaby:
40           node: lf-virtual6
41           DASHBOARD_URL: http://172.30.13.91
42       - arm64-latest:
43           node: lf-pod4
44           DASHBOARD_URL: http://172.30.12.83
45       - arm64-zed:
46           node: lf-virtual9
47           DASHBOARD_URL: http://172.30.13.94
48       - arm64-yoga:
49           node: lf-pod4-3
50           DASHBOARD_URL: http://172.30.12.88
51       - arm64-xena:
52           node: laas-xena
53           DASHBOARD_URL: http://10.200.120.76
54       - arm64-wallaby:
55           node: lf-virtual6
56           DASHBOARD_URL: http://172.30.13.91
57
58 - functest-pi-ollivier-functest-healthcheck-params: &functest-pi-ollivier-functest-healthcheck-params
59     name: 'functest-pi-ollivier-functest-healthcheck-params'
60     repo: 'ollivier'
61     container: 'functest-healthcheck'
62     port:
63     tag:
64       - latest:
65           node: lf-pod4
66           DASHBOARD_URL: http://172.30.12.83
67       - zed:
68           node: lf-virtual9
69           DASHBOARD_URL: http://172.30.13.94
70       - yoga:
71           node: lf-pod4-3
72           DASHBOARD_URL: http://172.30.12.88
73       - xena:
74           node: laas-xena
75           DASHBOARD_URL: http://10.200.120.76
76       - wallaby:
77           node: lf-virtual6
78           DASHBOARD_URL: http://172.30.13.91
79       - arm-latest:
80           node: lf-pod4
81           DASHBOARD_URL: http://172.30.12.83
82       - arm-zed:
83           node: lf-virtual9
84           DASHBOARD_URL: http://172.30.13.94
85       - arm-yoga:
86           node: lf-pod4-3
87           DASHBOARD_URL: http://172.30.12.88
88       - xena-latest:
89           node: laas-xena
90           DASHBOARD_URL: http://10.200.120.76
91       - arm-wallaby:
92           node: lf-virtual6
93           DASHBOARD_URL: http://172.30.13.91
94       - arm64-latest:
95           node: lf-pod4
96           DASHBOARD_URL: http://172.30.12.83
97       - arm64-zed:
98           node: lf-virtual9
99           DASHBOARD_URL: http://172.30.13.94
100       - arm64-yoga:
101           node: lf-pod4-3
102           DASHBOARD_URL: http://172.30.12.88
103       - arm64-xena:
104           node: laas-xena
105           DASHBOARD_URL: http://10.200.120.76
106       - arm64-wallaby:
107           node: lf-virtual6
108           DASHBOARD_URL: http://172.30.13.91
109
110 - functest-pi-ollivier-functest-smoke-params: &functest-pi-ollivier-functest-smoke-params
111     name: 'functest-pi-ollivier-functest-smoke-params'
112     repo: 'ollivier'
113     container: 'functest-smoke'
114     port:
115     tag:
116       - latest:
117           node: lf-pod4
118           DASHBOARD_URL: http://172.30.12.83
119       - zed:
120           node: lf-virtual9
121           DASHBOARD_URL: http://172.30.13.94
122       - yoga:
123           node: lf-pod4-3
124           DASHBOARD_URL: http://172.30.12.88
125       - xena:
126           node: laas-xena
127           DASHBOARD_URL: http://10.200.120.76
128       - wallaby:
129           node: lf-virtual6
130           DASHBOARD_URL: http://172.30.13.91
131       - arm-latest:
132           node: lf-pod4
133           DASHBOARD_URL: http://172.30.12.83
134       - arm-zed:
135           node: lf-virtual9
136           DASHBOARD_URL: http://172.30.13.94
137       - arm-yoga:
138           node: lf-pod4-3
139           DASHBOARD_URL: http://172.30.12.88
140       - xena-latest:
141           node: laas-xena
142           DASHBOARD_URL: http://10.200.120.76
143       - arm-wallaby:
144           node: lf-virtual6
145           DASHBOARD_URL: http://172.30.13.91
146       - arm64-latest:
147           node: lf-pod4
148           DASHBOARD_URL: http://172.30.12.83
149       - arm64-zed:
150           node: lf-virtual9
151           DASHBOARD_URL: http://172.30.13.94
152       - arm64-yoga:
153           node: lf-pod4-3
154           DASHBOARD_URL: http://172.30.12.88
155       - arm64-xena:
156           node: laas-xena
157           DASHBOARD_URL: http://10.200.120.76
158       - arm64-wallaby:
159           node: lf-virtual6
160           DASHBOARD_URL: http://172.30.13.91
161
162 - functest-pi-ollivier-functest-smoke-cntt-params: &functest-pi-ollivier-functest-smoke-cntt-params
163     name: 'functest-pi-ollivier-functest-smoke-cntt-params'
164     repo: 'ollivier'
165     container: 'functest-smoke-cntt'
166     port:
167     tag:
168       - latest:
169           node: lf-pod4
170           DASHBOARD_URL: http://172.30.12.83
171       - zed:
172           node: lf-virtual9
173           DASHBOARD_URL: http://172.30.13.94
174       - yoga:
175           node: lf-pod4-3
176           DASHBOARD_URL: http://172.30.12.88
177       - xena:
178           node: laas-xena
179           DASHBOARD_URL: http://10.200.120.76
180       - wallaby:
181           node: lf-virtual6
182           DASHBOARD_URL: http://172.30.13.91
183       - arm-latest:
184           node: lf-pod4
185           DASHBOARD_URL: http://172.30.12.83
186       - arm-zed:
187           node: lf-virtual9
188           DASHBOARD_URL: http://172.30.13.94
189       - arm-yoga:
190           node: lf-pod4-3
191           DASHBOARD_URL: http://172.30.12.88
192       - xena-latest:
193           node: laas-xena
194           DASHBOARD_URL: http://10.200.120.76
195       - arm-wallaby:
196           node: lf-virtual6
197           DASHBOARD_URL: http://172.30.13.91
198       - arm64-latest:
199           node: lf-pod4
200           DASHBOARD_URL: http://172.30.12.83
201       - arm64-zed:
202           node: lf-virtual9
203           DASHBOARD_URL: http://172.30.13.94
204       - arm64-yoga:
205           node: lf-pod4-3
206           DASHBOARD_URL: http://172.30.12.88
207       - arm64-xena:
208           node: laas-xena
209           DASHBOARD_URL: http://10.200.120.76
210       - arm64-wallaby:
211           node: lf-virtual6
212           DASHBOARD_URL: http://172.30.13.91
213
214 - functest-pi-ollivier-functest-benchmarking-params: &functest-pi-ollivier-functest-benchmarking-params
215     name: 'functest-pi-ollivier-functest-benchmarking-params'
216     repo: 'ollivier'
217     container: 'functest-benchmarking'
218     port:
219     tag:
220       - latest:
221           node: lf-pod4
222           DASHBOARD_URL: http://172.30.12.83
223       - zed:
224           node: lf-virtual9
225           DASHBOARD_URL: http://172.30.13.94
226       - yoga:
227           node: lf-pod4-3
228           DASHBOARD_URL: http://172.30.12.88
229       - xena:
230           node: laas-xena
231           DASHBOARD_URL: http://10.200.120.76
232       - wallaby:
233           node: lf-virtual6
234           DASHBOARD_URL: http://172.30.13.91
235       - arm-latest:
236           node: lf-pod4
237           DASHBOARD_URL: http://172.30.12.83
238       - arm-zed:
239           node: lf-virtual9
240           DASHBOARD_URL: http://172.30.13.94
241       - arm-yoga:
242           node: lf-pod4-3
243           DASHBOARD_URL: http://172.30.12.88
244       - xena-latest:
245           node: laas-xena
246           DASHBOARD_URL: http://10.200.120.76
247       - arm-wallaby:
248           node: lf-virtual6
249           DASHBOARD_URL: http://172.30.13.91
250       - arm64-latest:
251           node: lf-pod4
252           DASHBOARD_URL: http://172.30.12.83
253       - arm64-zed:
254           node: lf-virtual9
255           DASHBOARD_URL: http://172.30.13.94
256       - arm64-yoga:
257           node: lf-pod4-3
258           DASHBOARD_URL: http://172.30.12.88
259       - arm64-xena:
260           node: laas-xena
261           DASHBOARD_URL: http://10.200.120.76
262       - arm64-wallaby:
263           node: lf-virtual6
264           DASHBOARD_URL: http://172.30.13.91
265
266 - functest-pi-ollivier-functest-benchmarking-cntt-params: &functest-pi-ollivier-functest-benchmarking-cntt-params
267     name: 'functest-pi-ollivier-functest-benchmarking-cntt-params'
268     repo: 'ollivier'
269     container: 'functest-benchmarking-cntt'
270     port:
271     tag:
272       - latest:
273           node: lf-pod4
274           DASHBOARD_URL: http://172.30.12.83
275       - zed:
276           node: lf-virtual9
277           DASHBOARD_URL: http://172.30.13.94
278       - yoga:
279           node: lf-pod4-3
280           DASHBOARD_URL: http://172.30.12.88
281       - xena:
282           node: laas-xena
283           DASHBOARD_URL: http://10.200.120.76
284       - wallaby:
285           node: lf-virtual6
286           DASHBOARD_URL: http://172.30.13.91
287       - arm-latest:
288           node: lf-pod4
289           DASHBOARD_URL: http://172.30.12.83
290       - arm-zed:
291           node: lf-virtual9
292           DASHBOARD_URL: http://172.30.13.94
293       - arm-yoga:
294           node: lf-pod4-3
295           DASHBOARD_URL: http://172.30.12.88
296       - xena-latest:
297           node: laas-xena
298           DASHBOARD_URL: http://10.200.120.76
299       - arm-wallaby:
300           node: lf-virtual6
301           DASHBOARD_URL: http://172.30.13.91
302       - arm64-latest:
303           node: lf-pod4
304           DASHBOARD_URL: http://172.30.12.83
305       - arm64-zed:
306           node: lf-virtual9
307           DASHBOARD_URL: http://172.30.13.94
308       - arm64-yoga:
309           node: lf-pod4-3
310           DASHBOARD_URL: http://172.30.12.88
311       - arm64-xena:
312           node: laas-xena
313           DASHBOARD_URL: http://10.200.120.76
314       - arm64-wallaby:
315           node: lf-virtual6
316           DASHBOARD_URL: http://172.30.13.91
317
318 - functest-pi-ollivier-functest-vnf-params: &functest-pi-ollivier-functest-vnf-params
319     name: 'functest-pi-ollivier-functest-vnf-params'
320     repo: 'ollivier'
321     container: 'functest-vnf'
322     port:
323     tag:
324       - latest:
325           node: lf-pod4
326           DASHBOARD_URL: http://172.30.12.83
327       - zed:
328           node: lf-virtual9
329           DASHBOARD_URL: http://172.30.13.94
330       - yoga:
331           node: lf-pod4-3
332           DASHBOARD_URL: http://172.30.12.88
333       - xena:
334           node: laas-xena
335           DASHBOARD_URL: http://10.200.120.76
336       - wallaby:
337           node: lf-virtual6
338           DASHBOARD_URL: http://172.30.13.91
339       - arm-latest:
340           node: lf-pod4
341           DASHBOARD_URL: http://172.30.12.83
342       - arm-zed:
343           node: lf-virtual9
344           DASHBOARD_URL: http://172.30.13.94
345       - arm-yoga:
346           node: lf-pod4-3
347           DASHBOARD_URL: http://172.30.12.88
348       - xena-latest:
349           node: laas-xena
350           DASHBOARD_URL: http://10.200.120.76
351       - arm-wallaby:
352           node: lf-virtual6
353           DASHBOARD_URL: http://172.30.13.91
354       - arm64-latest:
355           node: lf-pod4
356           DASHBOARD_URL: http://172.30.12.83
357       - arm64-zed:
358           node: lf-virtual9
359           DASHBOARD_URL: http://172.30.13.94
360       - arm64-yoga:
361           node: lf-pod4-3
362           DASHBOARD_URL: http://172.30.12.88
363       - arm64-xena:
364           node: laas-xena
365           DASHBOARD_URL: http://10.200.120.76
366       - arm64-wallaby:
367           node: lf-virtual6
368           DASHBOARD_URL: http://172.30.13.91
369
370 - functest-pi-jobs: &functest-pi-jobs
371     name: 'functest-pi-jobs'
372     current-parameters: true
373
374 - parameter:
375     name: functest-pi-node
376     parameters:
377       - label:
378           name: node
379           default: '{node}'
380
381 - parameter:
382     name: functest-pi-build_tag
383     parameters:
384       - random-string:
385           name: build_tag
386
387 - parameter:
388     name: functest-pi-EXTERNAL_NETWORK
389     parameters:
390       - string:
391           name: EXTERNAL_NETWORK
392           default: public
393
394 - parameter:
395     name: functest-pi-VOLUME_DEVICE_NAME
396     parameters:
397       - string:
398           name: VOLUME_DEVICE_NAME
399           default: sdb
400
401 - parameter:
402     name: functest-pi-IMAGE_PROPERTIES
403     parameters:
404       - string:
405           name: IMAGE_PROPERTIES
406           default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
407
408 - functest-pi-run-containers: &functest-pi-run-containers
409     name: 'functest-pi-run-containers'
410     <<: *functest-pi-containers
411     privileged: '{privileged}'
412     volumes: '{volumes}'
413     env: '{env}'
414     network: '{network}'
415     uid: '{uid}'
416     gid: '{gid}'
417     published_ports: '{published_ports}'
418     DASHBOARD_URL: '{DASHBOARD_URL}'
419
420 - builder:
421     name: functest-pi-pull-containers
422     builders:
423       - shell: |
424           set +x
425           if [ "{repo}" = "_" ]; then
426             image={container}:{tag}
427           elif [ "{port}" = "None" ]; then
428             image={repo}/{container}:{tag}
429           else
430             image={repo}:{port}/{container}:{tag}
431           fi
432           sudo docker pull $image
433
434 - builder:
435     name: functest-pi-run-containers
436     builders:
437       - shell: |
438           set +x
439           volumes=;
440           if [ "{volumes}" != "None" ]; then
441             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
442               do volumes="-v $i $volumes"; done
443           fi
444           env=;
445           if [ "{env}" != "None" ]; then
446             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
447               do env="-e $i $env"; done
448           fi
449           published_ports=;
450           if [ "{published_ports}" != "None" ]; then
451             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
452               do published_ports="-p $i $published_ports"; done
453           fi
454           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
455           if [ "{repo}" = "_" ]; then
456             image={container}:{tag}
457           elif [ "{port}" = "None" ]; then
458             image={repo}/{container}:{tag}
459           else
460             image={repo}:{port}/{container}:{tag}
461           fi
462           sudo mkdir -p $WORKSPACE/results
463           sudo chown {uid}:{gid} $WORKSPACE/results
464           sudo docker run --rm \
465             --privileged={privileged} \
466             --network={network} \
467             $volumes \
468             $env \
469             $published_ports \
470             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
471             -e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
472             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
473             -v /home/opnfv/functest/.boto:/etc/boto.cfg \
474             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
475             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
476             -e NODE_NAME=$node \
477             -e BUILD_TAG=$BUILD_TAG \
478             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
479             -e DASHBOARD_URL={DASHBOARD_URL} \
480             $image run_tests -t {test} -p -r
481
482 - builder:
483     name: functest-pi-remove-images
484     builders:
485       - shell: |
486           set +x
487           if [ "{repo}" = "_" ]; then
488             image={container}:{tag}
489           elif [ "{port}" = "None" ]; then
490             image={repo}/{container}:{tag}
491           else
492             image={repo}:{port}/{container}:{tag}
493           fi
494           sudo docker rmi $image || true
495
496 - job-template:
497     name: 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
498     parameters:
499       - functest-pi-node:
500           node: '{node}'
501     builders:
502       - functest-pi-pull-containers:
503           <<: *functest-pi-containers
504
505 - project:
506     name: 'functest-pi-ollivier-functest-healthcheck-pull'
507     <<: *functest-pi-ollivier-functest-healthcheck-params
508     jobs:
509       - 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
510
511 - job-template:
512     name: 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
513     parameters:
514       - functest-pi-node:
515           node: '{node}'
516     builders:
517       - functest-pi-remove-images:
518           <<: *functest-pi-containers
519
520 - project:
521     name: 'functest-pi-ollivier-functest-healthcheck-rmi'
522     <<: *functest-pi-ollivier-functest-healthcheck-params
523     jobs:
524       - 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
525
526 - job-template:
527     name: 'functest-pi-ollivier-functest-smoke-{tag}-pull'
528     parameters:
529       - functest-pi-node:
530           node: '{node}'
531     builders:
532       - functest-pi-pull-containers:
533           <<: *functest-pi-containers
534
535 - project:
536     name: 'functest-pi-ollivier-functest-smoke-pull'
537     <<: *functest-pi-ollivier-functest-smoke-params
538     jobs:
539       - 'functest-pi-ollivier-functest-smoke-{tag}-pull'
540
541 - job-template:
542     name: 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
543     parameters:
544       - functest-pi-node:
545           node: '{node}'
546     builders:
547       - functest-pi-remove-images:
548           <<: *functest-pi-containers
549
550 - project:
551     name: 'functest-pi-ollivier-functest-smoke-rmi'
552     <<: *functest-pi-ollivier-functest-smoke-params
553     jobs:
554       - 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
555
556 - job-template:
557     name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
558     parameters:
559       - functest-pi-node:
560           node: '{node}'
561     builders:
562       - functest-pi-pull-containers:
563           <<: *functest-pi-containers
564
565 - project:
566     name: 'functest-pi-ollivier-functest-smoke-cntt-pull'
567     <<: *functest-pi-ollivier-functest-smoke-cntt-params
568     jobs:
569       - 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
570
571 - job-template:
572     name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
573     parameters:
574       - functest-pi-node:
575           node: '{node}'
576     builders:
577       - functest-pi-remove-images:
578           <<: *functest-pi-containers
579
580 - project:
581     name: 'functest-pi-ollivier-functest-smoke-cntt-rmi'
582     <<: *functest-pi-ollivier-functest-smoke-cntt-params
583     jobs:
584       - 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
585
586 - job-template:
587     name: 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
588     parameters:
589       - functest-pi-node:
590           node: '{node}'
591     builders:
592       - functest-pi-pull-containers:
593           <<: *functest-pi-containers
594
595 - project:
596     name: 'functest-pi-ollivier-functest-benchmarking-pull'
597     <<: *functest-pi-ollivier-functest-benchmarking-params
598     jobs:
599       - 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
600
601 - job-template:
602     name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
603     parameters:
604       - functest-pi-node:
605           node: '{node}'
606     builders:
607       - functest-pi-remove-images:
608           <<: *functest-pi-containers
609
610 - project:
611     name: 'functest-pi-ollivier-functest-benchmarking-rmi'
612     <<: *functest-pi-ollivier-functest-benchmarking-params
613     jobs:
614       - 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
615
616 - job-template:
617     name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
618     parameters:
619       - functest-pi-node:
620           node: '{node}'
621     builders:
622       - functest-pi-pull-containers:
623           <<: *functest-pi-containers
624
625 - project:
626     name: 'functest-pi-ollivier-functest-benchmarking-cntt-pull'
627     <<: *functest-pi-ollivier-functest-benchmarking-cntt-params
628     jobs:
629       - 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
630
631 - job-template:
632     name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
633     parameters:
634       - functest-pi-node:
635           node: '{node}'
636     builders:
637       - functest-pi-remove-images:
638           <<: *functest-pi-containers
639
640 - project:
641     name: 'functest-pi-ollivier-functest-benchmarking-cntt-rmi'
642     <<: *functest-pi-ollivier-functest-benchmarking-cntt-params
643     jobs:
644       - 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
645
646 - job-template:
647     name: 'functest-pi-ollivier-functest-vnf-{tag}-pull'
648     parameters:
649       - functest-pi-node:
650           node: '{node}'
651     builders:
652       - functest-pi-pull-containers:
653           <<: *functest-pi-containers
654
655 - project:
656     name: 'functest-pi-ollivier-functest-vnf-pull'
657     <<: *functest-pi-ollivier-functest-vnf-params
658     jobs:
659       - 'functest-pi-ollivier-functest-vnf-{tag}-pull'
660
661 - job-template:
662     name: 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
663     parameters:
664       - functest-pi-node:
665           node: '{node}'
666     builders:
667       - functest-pi-remove-images:
668           <<: *functest-pi-containers
669
670 - project:
671     name: 'functest-pi-ollivier-functest-vnf-rmi'
672     <<: *functest-pi-ollivier-functest-vnf-params
673     jobs:
674       - 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
675
676 - job-template:
677     name: 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
678     parameters:
679       - functest-pi-node:
680           node: '{node}'
681       - functest-pi-build_tag:
682           build_tag: ''
683       - functest-pi-EXTERNAL_NETWORK:
684           EXTERNAL_NETWORK: public
685       - functest-pi-VOLUME_DEVICE_NAME:
686           VOLUME_DEVICE_NAME: sdb
687       - functest-pi-IMAGE_PROPERTIES:
688           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
689     builders:
690       - functest-pi-run-containers:
691           <<: *functest-pi-run-containers
692           test: '{test}'
693
694 - project:
695     name: 'functest-pi-ollivier-functest-healthcheck'
696     <<: *functest-pi-ollivier-functest-healthcheck-params
697     volumes:
698       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
699       - /home/opnfv/functest/images:/home/opnfv/functest/images
700     env:
701       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
702       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
703       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
704     published_ports:
705     container: 'functest-healthcheck'
706     test:
707       - connection_check
708       - tenantnetwork1
709       - tenantnetwork2
710       - vmready1
711       - vmready2
712       - singlevm1
713       - singlevm2
714       - vping_ssh
715       - vping_userdata
716       - cinder_test
717       - odl
718       - tempest_smoke
719       - tempest_horizon
720     privileged: 'false'
721     network: bridge
722     uid: 1000
723     gid: 1000
724     jobs:
725       - 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
726
727 - job-template:
728     name: 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
729     parameters:
730       - functest-pi-node:
731           node: '{node}'
732       - functest-pi-build_tag:
733           build_tag: ''
734       - functest-pi-EXTERNAL_NETWORK:
735           EXTERNAL_NETWORK: public
736       - functest-pi-VOLUME_DEVICE_NAME:
737           VOLUME_DEVICE_NAME: sdb
738       - functest-pi-IMAGE_PROPERTIES:
739           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
740     builders:
741       - functest-pi-run-containers:
742           <<: *functest-pi-run-containers
743           test: '{test}'
744
745 - project:
746     name: 'functest-pi-ollivier-functest-smoke'
747     <<: *functest-pi-ollivier-functest-smoke-params
748     volumes:
749       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
750       - /home/opnfv/functest/images:/home/opnfv/functest/images
751     env:
752       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
753       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
754       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
755     published_ports:
756     container: 'functest-smoke'
757     test:
758       - tempest_neutron
759       - tempest_cinder
760       - tempest_keystone
761       - tempest_heat
762       - tempest_telemetry
763       - rally_sanity
764       - refstack_compute
765       - refstack_object
766       - refstack_platform
767       - tempest_full
768       - tempest_scenario
769       - tempest_slow
770       - patrole_admin
771       - patrole_member
772       - patrole_reader
773       - tempest_barbican
774       - tempest_octavia
775       - tempest_cyborg
776     privileged: 'false'
777     network: bridge
778     uid: 1000
779     gid: 1000
780     jobs:
781       - 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
782
783 - job-template:
784     name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
785     parameters:
786       - functest-pi-node:
787           node: '{node}'
788       - functest-pi-build_tag:
789           build_tag: ''
790       - functest-pi-EXTERNAL_NETWORK:
791           EXTERNAL_NETWORK: public
792       - functest-pi-VOLUME_DEVICE_NAME:
793           VOLUME_DEVICE_NAME: sdb
794       - functest-pi-IMAGE_PROPERTIES:
795           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
796     builders:
797       - functest-pi-run-containers:
798           <<: *functest-pi-run-containers
799           test: '{test}'
800
801 - project:
802     name: 'functest-pi-ollivier-functest-smoke-cntt'
803     <<: *functest-pi-ollivier-functest-smoke-cntt-params
804     volumes:
805       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
806       - /home/opnfv/functest/images:/home/opnfv/functest/images
807     env:
808       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
809       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
810       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
811     published_ports:
812     container: 'functest-smoke-cntt'
813     test:
814       - tempest_neutron_cntt
815       - tempest_cinder_cntt
816       - tempest_keystone_cntt
817       - tempest_heat_cntt
818       - rally_sanity_cntt
819       - tempest_full_cntt
820       - tempest_scenario_cntt
821       - tempest_slow_cntt
822     privileged: 'false'
823     network: bridge
824     uid: 1000
825     gid: 1000
826     jobs:
827       - 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
828
829 - job-template:
830     name: 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
831     parameters:
832       - functest-pi-node:
833           node: '{node}'
834       - functest-pi-build_tag:
835           build_tag: ''
836       - functest-pi-EXTERNAL_NETWORK:
837           EXTERNAL_NETWORK: public
838       - functest-pi-VOLUME_DEVICE_NAME:
839           VOLUME_DEVICE_NAME: sdb
840       - functest-pi-IMAGE_PROPERTIES:
841           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
842     builders:
843       - functest-pi-run-containers:
844           <<: *functest-pi-run-containers
845           test: '{test}'
846
847 - project:
848     name: 'functest-pi-ollivier-functest-benchmarking'
849     <<: *functest-pi-ollivier-functest-benchmarking-params
850     volumes:
851       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
852       - /home/opnfv/functest/images:/home/opnfv/functest/images
853     env:
854       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
855       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
856       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
857     published_ports:
858     container: 'functest-benchmarking'
859     test:
860       - rally_full
861       - rally_jobs
862       - vmtp
863       - shaker
864     privileged: 'false'
865     network: bridge
866     uid: 1000
867     gid: 1000
868     jobs:
869       - 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
870
871 - job-template:
872     name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
873     parameters:
874       - functest-pi-node:
875           node: '{node}'
876       - functest-pi-build_tag:
877           build_tag: ''
878       - functest-pi-EXTERNAL_NETWORK:
879           EXTERNAL_NETWORK: public
880       - functest-pi-VOLUME_DEVICE_NAME:
881           VOLUME_DEVICE_NAME: sdb
882       - functest-pi-IMAGE_PROPERTIES:
883           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
884     builders:
885       - functest-pi-run-containers:
886           <<: *functest-pi-run-containers
887           test: '{test}'
888
889 - project:
890     name: 'functest-pi-ollivier-functest-benchmarking-cntt'
891     <<: *functest-pi-ollivier-functest-benchmarking-cntt-params
892     volumes:
893       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
894       - /home/opnfv/functest/images:/home/opnfv/functest/images
895     env:
896       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
897       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
898       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
899     published_ports:
900     container: 'functest-benchmarking-cntt'
901     test:
902       - rally_full_cntt
903       - rally_jobs_cntt
904     privileged: 'false'
905     network: bridge
906     uid: 1000
907     gid: 1000
908     jobs:
909       - 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
910
911 - job-template:
912     name: 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
913     parameters:
914       - functest-pi-node:
915           node: '{node}'
916       - functest-pi-build_tag:
917           build_tag: ''
918       - functest-pi-EXTERNAL_NETWORK:
919           EXTERNAL_NETWORK: public
920       - functest-pi-VOLUME_DEVICE_NAME:
921           VOLUME_DEVICE_NAME: sdb
922       - functest-pi-IMAGE_PROPERTIES:
923           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
924     builders:
925       - functest-pi-run-containers:
926           <<: *functest-pi-run-containers
927           test: '{test}'
928
929 - project:
930     name: 'functest-pi-ollivier-functest-vnf'
931     <<: *functest-pi-ollivier-functest-vnf-params
932     volumes:
933       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
934       - /home/opnfv/functest/images:/home/opnfv/functest/images
935     env:
936       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
937       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
938       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
939     published_ports:
940     container: 'functest-vnf'
941     test:
942       - cloudify
943       - cloudify_ims
944       - heat_ims
945       - vyos_vrouter
946       - juju_epc
947     privileged: 'false'
948     network: bridge
949     uid: 1000
950     gid: 1000
951     jobs:
952       - 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
953
954 - builder:
955     name: functest-pi-zip
956     builders:
957       - shell: |
958           set +x
959           volumes=;
960           if [ "{volumes}" != "None" ]; then
961             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
962               do volumes="-v $i $volumes"; done
963           fi
964           env=;
965           if [ "{env}" != "None" ]; then
966             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
967               do env="-e $i $env"; done
968           fi
969           published_ports=;
970           if [ "{published_ports}" != "None" ]; then
971             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
972               do published_ports="-p $i $published_ports"; done
973           fi
974           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
975           if [ "{repo}" = "_" ]; then
976             image={container}:{tag}
977           elif [ "{port}" = "None" ]; then
978             image={repo}/{container}:{tag}
979           else
980             image={repo}:{port}/{container}:{tag}
981           fi
982           sudo mkdir -p $WORKSPACE/results
983           sudo chown {uid}:{gid} $WORKSPACE/results
984           sudo docker run --rm \
985             --privileged={privileged} \
986             --network={network} \
987             $volumes \
988             $env \
989             $published_ports \
990             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
991             -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
992             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
993             -v /home/opnfv/functest/.boto:/etc/boto.cfg \
994             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
995             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
996             -e NODE_NAME=$node \
997             -e BUILD_TAG=$BUILD_TAG \
998             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
999             -e DASHBOARD_URL={DASHBOARD_URL} \
1000             $image zip_campaign
1001
1002 - job-template:
1003     name: 'functest-pi-{tag}-zip'
1004     parameters:
1005       - functest-pi-node:
1006           node: '{node}'
1007       - functest-pi-build_tag:
1008           build_tag: ''
1009       - functest-pi-EXTERNAL_NETWORK:
1010           EXTERNAL_NETWORK: public
1011       - functest-pi-VOLUME_DEVICE_NAME:
1012           VOLUME_DEVICE_NAME: sdb
1013       - functest-pi-IMAGE_PROPERTIES:
1014           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
1015     builders:
1016       - functest-pi-zip:
1017           <<: *functest-pi-run-containers
1018
1019 - project:
1020     name: 'functest-pi-{tag}-zip'
1021     <<: *functest-pi-ollivier-functest-healthcheck-params
1022     volumes:
1023       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
1024       - /home/opnfv/functest/images:/home/opnfv/functest/images
1025     env:
1026       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
1027       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
1028       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
1029     published_ports:
1030     container: 'functest-healthcheck'
1031     privileged: 'false'
1032     network: bridge
1033     uid: 1000
1034     gid: 1000
1035     jobs:
1036       - 'functest-pi-{tag}-zip'
1037
1038 - job-template:
1039     name: 'functest-pi-{tag}-daily'
1040     project-type: multijob
1041     triggers:
1042       - timed: '@weekly'
1043     parameters:
1044       - functest-pi-node:
1045           node: '{node}'
1046       - functest-pi-build_tag:
1047           build_tag: ''
1048       - functest-pi-EXTERNAL_NETWORK:
1049           EXTERNAL_NETWORK: public
1050       - functest-pi-VOLUME_DEVICE_NAME:
1051           VOLUME_DEVICE_NAME: sdb
1052       - functest-pi-IMAGE_PROPERTIES:
1053           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
1054     # PyYAML and yamllint differ here
1055     # see https://github.com/yaml/pyyaml/issues/234
1056     # yamllint disable rule:indentation
1057     properties:
1058       - build-blocker:
1059           blocking-jobs:
1060           - ^functest-(pi-)*{tag}-(daily|docker|review)$
1061     # yamllint enable rule:indentation
1062     builders:
1063       - multijob:
1064           name: remove former images
1065           projects:
1066             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
1067               <<: *functest-pi-jobs
1068             - name: 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
1069               <<: *functest-pi-jobs
1070             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
1071               <<: *functest-pi-jobs
1072             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
1073               <<: *functest-pi-jobs
1074             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
1075               <<: *functest-pi-jobs
1076             - name: 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
1077               <<: *functest-pi-jobs
1078       - multijob:
1079           name: pull containers
1080           projects:
1081             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
1082               <<: *functest-pi-jobs
1083             - name: 'functest-pi-ollivier-functest-smoke-{tag}-pull'
1084               <<: *functest-pi-jobs
1085             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
1086               <<: *functest-pi-jobs
1087             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
1088               <<: *functest-pi-jobs
1089             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
1090               <<: *functest-pi-jobs
1091             - name: 'functest-pi-ollivier-functest-vnf-{tag}-pull'
1092               <<: *functest-pi-jobs
1093       - multijob:
1094           name: ollivier/functest-healthcheck:{tag}
1095           projects:
1096             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-connection_check-run'
1097               <<: *functest-pi-jobs
1098             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork1-run'
1099               <<: *functest-pi-jobs
1100             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork2-run'
1101               <<: *functest-pi-jobs
1102             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready1-run'
1103               <<: *functest-pi-jobs
1104             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready2-run'
1105               <<: *functest-pi-jobs
1106             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm1-run'
1107               <<: *functest-pi-jobs
1108             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm2-run'
1109               <<: *functest-pi-jobs
1110             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_ssh-run'
1111               <<: *functest-pi-jobs
1112             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_userdata-run'
1113               <<: *functest-pi-jobs
1114             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-cinder_test-run'
1115               <<: *functest-pi-jobs
1116             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-odl-run'
1117               <<: *functest-pi-jobs
1118             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_smoke-run'
1119               <<: *functest-pi-jobs
1120             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_horizon-run'
1121               <<: *functest-pi-jobs
1122       - multijob:
1123           name: ollivier/functest-smoke:{tag}
1124           projects:
1125             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_neutron-run'
1126               <<: *functest-pi-jobs
1127             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cinder-run'
1128               <<: *functest-pi-jobs
1129             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_keystone-run'
1130               <<: *functest-pi-jobs
1131             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_heat-run'
1132               <<: *functest-pi-jobs
1133             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_telemetry-run'
1134               <<: *functest-pi-jobs
1135             - name: 'functest-pi-ollivier-functest-smoke-{tag}-rally_sanity-run'
1136               <<: *functest-pi-jobs
1137             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_compute-run'
1138               <<: *functest-pi-jobs
1139             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_object-run'
1140               <<: *functest-pi-jobs
1141             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_platform-run'
1142               <<: *functest-pi-jobs
1143             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_full-run'
1144               <<: *functest-pi-jobs
1145             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_scenario-run'
1146               <<: *functest-pi-jobs
1147             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_slow-run'
1148               <<: *functest-pi-jobs
1149             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_admin-run'
1150               <<: *functest-pi-jobs
1151             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_member-run'
1152               <<: *functest-pi-jobs
1153             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_reader-run'
1154               <<: *functest-pi-jobs
1155             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_barbican-run'
1156               <<: *functest-pi-jobs
1157             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_octavia-run'
1158               <<: *functest-pi-jobs
1159             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cyborg-run'
1160               <<: *functest-pi-jobs
1161       - multijob:
1162           name: ollivier/functest-smoke-cntt:{tag}
1163           projects:
1164             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
1165               <<: *functest-pi-jobs
1166             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
1167               <<: *functest-pi-jobs
1168             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
1169               <<: *functest-pi-jobs
1170             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
1171               <<: *functest-pi-jobs
1172             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
1173               <<: *functest-pi-jobs
1174             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
1175               <<: *functest-pi-jobs
1176             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
1177               <<: *functest-pi-jobs
1178             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
1179               <<: *functest-pi-jobs
1180       - multijob:
1181           name: ollivier/functest-benchmarking:{tag}
1182           projects:
1183             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_full-run'
1184               <<: *functest-pi-jobs
1185             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_jobs-run'
1186               <<: *functest-pi-jobs
1187             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-vmtp-run'
1188               <<: *functest-pi-jobs
1189             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-shaker-run'
1190               <<: *functest-pi-jobs
1191       - multijob:
1192           name: ollivier/functest-benchmarking-cntt:{tag}
1193           projects:
1194             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
1195               <<: *functest-pi-jobs
1196             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
1197               <<: *functest-pi-jobs
1198       - multijob:
1199           name: ollivier/functest-vnf:{tag}
1200           projects:
1201             - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify-run'
1202               <<: *functest-pi-jobs
1203             - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify_ims-run'
1204               <<: *functest-pi-jobs
1205             - name: 'functest-pi-ollivier-functest-vnf-{tag}-heat_ims-run'
1206               <<: *functest-pi-jobs
1207             - name: 'functest-pi-ollivier-functest-vnf-{tag}-vyos_vrouter-run'
1208               <<: *functest-pi-jobs
1209             - name: 'functest-pi-ollivier-functest-vnf-{tag}-juju_epc-run'
1210               <<: *functest-pi-jobs
1211       - multijob:
1212           name: dump all campaign data
1213           projects:
1214             - name: 'functest-pi-{tag}-zip'
1215               <<: *functest-pi-jobs
1216     publishers:
1217       - email-ext:
1218           failure: false
1219           first-failure: true
1220           fixed: true
1221           recipients: cedric.ollivier@orange.com
1222
1223 - project:
1224     name: 'functest-pi-daily'
1225     <<: *functest-pi-params
1226     jobs:
1227       - 'functest-pi-{tag}-daily'
1228
1229 - view:
1230     name: functest-pi
1231     view-type: list
1232     columns:
1233       - status
1234       - weather
1235       - job
1236       - last-success
1237       - last-failure
1238       - last-duration
1239     regex: ^functest-pi-[a-z-0-9.]+-daily$