Publish Functest Zed Jobs
[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     repo: 'ollivier'
12     port:
13     tag:
14       - latest:
15           slave: lf-pod4
16           DASHBOARD_URL: http://172.30.12.83
17       - zed:
18           slave: lf-virtual9
19           DASHBOARD_URL: http://172.30.13.94
20       - yoga:
21           slave: lf-pod4-3
22           DASHBOARD_URL: http://172.30.12.88
23       - xena:
24           slave: laas-xena
25           DASHBOARD_URL: http://10.200.120.76
26       - wallaby:
27           slave: lf-virtual6
28           DASHBOARD_URL: http://172.30.13.91
29       - leguer:
30           slave: lf-virtual9
31           DASHBOARD_URL: http://172.30.13.94
32       - arm-latest:
33           slave: lf-pod4
34           DASHBOARD_URL: http://172.30.12.83
35       - arm-zed:
36           slave: lf-virtual9
37           DASHBOARD_URL: http://172.30.13.94
38       - arm-yoga:
39           slave: lf-pod4-3
40           DASHBOARD_URL: http://172.30.12.88
41       - xena-latest:
42           slave: laas-xena
43           DASHBOARD_URL: http://10.200.120.76
44       - arm-wallaby:
45           slave: lf-virtual6
46           DASHBOARD_URL: http://172.30.13.91
47       - arm-leguer:
48           slave: lf-virtual9
49           DASHBOARD_URL: http://172.30.13.94
50       - arm64-latest:
51           slave: lf-pod4
52           DASHBOARD_URL: http://172.30.12.83
53       - arm64-zed:
54           slave: lf-virtual9
55           DASHBOARD_URL: http://172.30.13.94
56       - arm64-yoga:
57           slave: lf-pod4-3
58           DASHBOARD_URL: http://172.30.12.88
59       - arm64-xena:
60           slave: laas-xena
61           DASHBOARD_URL: http://10.200.120.76
62       - arm64-wallaby:
63           slave: lf-virtual6
64           DASHBOARD_URL: http://172.30.13.91
65       - arm64-leguer:
66           slave: lf-virtual9
67           DASHBOARD_URL: http://172.30.13.94
68
69 - functest-pi-jobs: &functest-pi-jobs
70     name: 'functest-pi-jobs'
71     current-parameters: true
72
73 - parameter:
74     name: functest-pi-slave
75     parameters:
76       - label:
77           name: slave
78           default: '{slave}'
79
80 - parameter:
81     name: functest-pi-build_tag
82     parameters:
83       - random-string:
84           name: build_tag
85
86 - parameter:
87     name: functest-pi-EXTERNAL_NETWORK
88     parameters:
89       - string:
90           name: EXTERNAL_NETWORK
91           default: public
92
93 - parameter:
94     name: functest-pi-VOLUME_DEVICE_NAME
95     parameters:
96       - string:
97           name: VOLUME_DEVICE_NAME
98           default: sdb
99
100 - parameter:
101     name: functest-pi-IMAGE_PROPERTIES
102     parameters:
103       - string:
104           name: IMAGE_PROPERTIES
105           default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
106
107 - functest-pi-run-containers: &functest-pi-run-containers
108     name: 'functest-pi-run-containers'
109     <<: *functest-pi-containers
110     test: '{test}'
111     privileged: '{privileged}'
112     volumes: '{volumes}'
113     env: '{env}'
114     network: '{network}'
115     uid: '{uid}'
116     gid: '{gid}'
117     published_ports: '{published_ports}'
118     DASHBOARD_URL: '{DASHBOARD_URL}'
119
120 - builder:
121     name: functest-pi-pull-containers
122     builders:
123       - shell: |
124           set +x
125           if [ "{repo}" = "_" ]; then
126             image={container}:{tag}
127           elif [ "{port}" = "None" ]; then
128             image={repo}/{container}:{tag}
129           else
130             image={repo}:{port}/{container}:{tag}
131           fi
132           sudo docker pull $image
133
134 - builder:
135     name: functest-pi-run-containers
136     builders:
137       - shell: |
138           set +x
139           volumes=;
140           if [ "{volumes}" != "None" ]; then
141             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
142               do volumes="-v $i $volumes"; done
143           fi
144           env=;
145           if [ "{env}" != "None" ]; then
146             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
147               do env="-e $i $env"; done
148           fi
149           published_ports=;
150           if [ "{published_ports}" != "None" ]; then
151             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
152               do published_ports="-p $i $published_ports"; done
153           fi
154           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
155           if [ "{repo}" = "_" ]; then
156             image={container}:{tag}
157           elif [ "{port}" = "None" ]; then
158             image={repo}/{container}:{tag}
159           else
160             image={repo}:{port}/{container}:{tag}
161           fi
162           sudo mkdir -p $WORKSPACE/results
163           sudo chown {uid}:{gid} $WORKSPACE/results
164           sudo docker run --rm \
165             --privileged={privileged} \
166             --network={network} \
167             $volumes \
168             $env \
169             $published_ports \
170             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
171             -e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
172             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
173             -v /home/opnfv/functest/.boto:/etc/boto.cfg \
174             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
175             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
176             -e NODE_NAME=$slave \
177             -e BUILD_TAG=$BUILD_TAG \
178             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
179             -e DASHBOARD_URL={DASHBOARD_URL} \
180             $image run_tests -t {test} -p -r
181
182 - builder:
183     name: functest-pi-remove-images
184     builders:
185       - shell: |
186           set +x
187           if [ "{repo}" = "_" ]; then
188             image={container}:{tag}
189           elif [ "{port}" = "None" ]; then
190             image={repo}/{container}:{tag}
191           else
192             image={repo}:{port}/{container}:{tag}
193           fi
194           sudo docker rmi $image || true
195
196 - job-template:
197     name: 'functest-pi-{repo}-{container}-{tag}-pull'
198     parameters:
199       - functest-pi-slave:
200           slave: '{slave}'
201     builders:
202       - functest-pi-pull-containers:
203           <<: *functest-pi-containers
204
205 - project:
206     name: 'functest-pi-ollivier-functest-healthcheck-pull'
207     <<: *functest-pi-params
208     container: 'functest-healthcheck'
209     jobs:
210       - 'functest-pi-{repo}-{container}-{tag}-pull'
211
212 - project:
213     name: 'functest-pi-ollivier-functest-smoke-pull'
214     <<: *functest-pi-params
215     container: 'functest-smoke'
216     jobs:
217       - 'functest-pi-{repo}-{container}-{tag}-pull'
218
219 - project:
220     name: 'functest-pi-ollivier-functest-smoke-cntt-pull'
221     <<: *functest-pi-params
222     container: 'functest-smoke-cntt'
223     jobs:
224       - 'functest-pi-{repo}-{container}-{tag}-pull'
225
226 - project:
227     name: 'functest-pi-ollivier-functest-benchmarking-pull'
228     <<: *functest-pi-params
229     container: 'functest-benchmarking'
230     jobs:
231       - 'functest-pi-{repo}-{container}-{tag}-pull'
232
233 - project:
234     name: 'functest-pi-ollivier-functest-benchmarking-cntt-pull'
235     <<: *functest-pi-params
236     container: 'functest-benchmarking-cntt'
237     jobs:
238       - 'functest-pi-{repo}-{container}-{tag}-pull'
239
240 - project:
241     name: 'functest-pi-ollivier-functest-vnf-pull'
242     <<: *functest-pi-params
243     container: 'functest-vnf'
244     jobs:
245       - 'functest-pi-{repo}-{container}-{tag}-pull'
246
247 - job-template:
248     name: 'functest-pi-{repo}-{container}-{tag}-rmi'
249     parameters:
250       - functest-pi-slave:
251           slave: '{slave}'
252     builders:
253       - functest-pi-remove-images:
254           <<: *functest-pi-containers
255
256 - project:
257     name: 'functest-pi-ollivier-functest-healthcheck-rmi'
258     <<: *functest-pi-params
259     container: 'functest-healthcheck'
260     jobs:
261       - 'functest-pi-{repo}-{container}-{tag}-rmi'
262
263 - project:
264     name: 'functest-pi-ollivier-functest-smoke-rmi'
265     <<: *functest-pi-params
266     container: 'functest-smoke'
267     jobs:
268       - 'functest-pi-{repo}-{container}-{tag}-rmi'
269
270 - project:
271     name: 'functest-pi-ollivier-functest-smoke-cntt-rmi'
272     <<: *functest-pi-params
273     container: 'functest-smoke-cntt'
274     jobs:
275       - 'functest-pi-{repo}-{container}-{tag}-rmi'
276
277 - project:
278     name: 'functest-pi-ollivier-functest-benchmarking-rmi'
279     <<: *functest-pi-params
280     container: 'functest-benchmarking'
281     jobs:
282       - 'functest-pi-{repo}-{container}-{tag}-rmi'
283
284 - project:
285     name: 'functest-pi-ollivier-functest-benchmarking-cntt-rmi'
286     <<: *functest-pi-params
287     container: 'functest-benchmarking-cntt'
288     jobs:
289       - 'functest-pi-{repo}-{container}-{tag}-rmi'
290
291 - project:
292     name: 'functest-pi-ollivier-functest-vnf-rmi'
293     <<: *functest-pi-params
294     container: 'functest-vnf'
295     jobs:
296       - 'functest-pi-{repo}-{container}-{tag}-rmi'
297
298 - job-template:
299     name: 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
300     parameters:
301       - functest-pi-slave:
302           slave: '{slave}'
303       - functest-pi-build_tag:
304           build_tag: ''
305       - functest-pi-EXTERNAL_NETWORK:
306           EXTERNAL_NETWORK: public
307       - functest-pi-VOLUME_DEVICE_NAME:
308           VOLUME_DEVICE_NAME: sdb
309       - functest-pi-IMAGE_PROPERTIES:
310           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
311     builders:
312       - functest-pi-run-containers:
313           <<: *functest-pi-run-containers
314
315 - project:
316     name: 'functest-pi-ollivier-functest-healthcheck'
317     <<: *functest-pi-params
318     volumes:
319       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
320       - /home/opnfv/functest/images:/home/opnfv/functest/images
321     env:
322       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
323       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
324       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
325     published_ports:
326     container: 'functest-healthcheck'
327     test:
328       - connection_check
329       - tenantnetwork1
330       - tenantnetwork2
331       - vmready1
332       - vmready2
333       - singlevm1
334       - singlevm2
335       - vping_ssh
336       - vping_userdata
337       - cinder_test
338       - odl
339       - tempest_smoke
340       - tempest_horizon
341     privileged: 'false'
342     network: bridge
343     uid: 1000
344     gid: 1000
345     jobs:
346       - 'functest-pi-ollivier-functest-healthcheck-{tag}-{test}-run'
347
348 - job-template:
349     name: 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
350     parameters:
351       - functest-pi-slave:
352           slave: '{slave}'
353       - functest-pi-build_tag:
354           build_tag: ''
355       - functest-pi-EXTERNAL_NETWORK:
356           EXTERNAL_NETWORK: public
357       - functest-pi-VOLUME_DEVICE_NAME:
358           VOLUME_DEVICE_NAME: sdb
359       - functest-pi-IMAGE_PROPERTIES:
360           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
361     builders:
362       - functest-pi-run-containers:
363           <<: *functest-pi-run-containers
364
365 - project:
366     name: 'functest-pi-ollivier-functest-smoke'
367     <<: *functest-pi-params
368     volumes:
369       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
370       - /home/opnfv/functest/images:/home/opnfv/functest/images
371     env:
372       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
373       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
374       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
375     published_ports:
376     container: 'functest-smoke'
377     test:
378       - tempest_neutron
379       - tempest_cinder
380       - tempest_keystone
381       - tempest_heat
382       - tempest_telemetry
383       - rally_sanity
384       - refstack_compute
385       - refstack_object
386       - refstack_platform
387       - tempest_full
388       - tempest_scenario
389       - tempest_slow
390       - patrole_admin
391       - patrole_member
392       - patrole_reader
393       - tempest_barbican
394       - tempest_octavia
395       - tempest_cyborg
396     privileged: 'false'
397     network: bridge
398     uid: 1000
399     gid: 1000
400     jobs:
401       - 'functest-pi-ollivier-functest-smoke-{tag}-{test}-run'
402
403 - job-template:
404     name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
405     parameters:
406       - functest-pi-slave:
407           slave: '{slave}'
408       - functest-pi-build_tag:
409           build_tag: ''
410       - functest-pi-EXTERNAL_NETWORK:
411           EXTERNAL_NETWORK: public
412       - functest-pi-VOLUME_DEVICE_NAME:
413           VOLUME_DEVICE_NAME: sdb
414       - functest-pi-IMAGE_PROPERTIES:
415           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
416     builders:
417       - functest-pi-run-containers:
418           <<: *functest-pi-run-containers
419
420 - project:
421     name: 'functest-pi-ollivier-functest-smoke-cntt'
422     <<: *functest-pi-params
423     volumes:
424       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
425       - /home/opnfv/functest/images:/home/opnfv/functest/images
426     env:
427       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
428       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
429       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
430     published_ports:
431     container: 'functest-smoke-cntt'
432     test:
433       - tempest_neutron_cntt
434       - tempest_cinder_cntt
435       - tempest_keystone_cntt
436       - tempest_heat_cntt
437       - rally_sanity_cntt
438       - tempest_full_cntt
439       - tempest_scenario_cntt
440       - tempest_slow_cntt
441     privileged: 'false'
442     network: bridge
443     uid: 1000
444     gid: 1000
445     jobs:
446       - 'functest-pi-ollivier-functest-smoke-cntt-{tag}-{test}-run'
447
448 - job-template:
449     name: 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
450     parameters:
451       - functest-pi-slave:
452           slave: '{slave}'
453       - functest-pi-build_tag:
454           build_tag: ''
455       - functest-pi-EXTERNAL_NETWORK:
456           EXTERNAL_NETWORK: public
457       - functest-pi-VOLUME_DEVICE_NAME:
458           VOLUME_DEVICE_NAME: sdb
459       - functest-pi-IMAGE_PROPERTIES:
460           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
461     builders:
462       - functest-pi-run-containers:
463           <<: *functest-pi-run-containers
464
465 - project:
466     name: 'functest-pi-ollivier-functest-benchmarking'
467     <<: *functest-pi-params
468     volumes:
469       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
470       - /home/opnfv/functest/images:/home/opnfv/functest/images
471     env:
472       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
473       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
474       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
475     published_ports:
476     container: 'functest-benchmarking'
477     test:
478       - rally_full
479       - rally_jobs
480       - vmtp
481       - shaker
482     privileged: 'false'
483     network: bridge
484     uid: 1000
485     gid: 1000
486     jobs:
487       - 'functest-pi-ollivier-functest-benchmarking-{tag}-{test}-run'
488
489 - job-template:
490     name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
491     parameters:
492       - functest-pi-slave:
493           slave: '{slave}'
494       - functest-pi-build_tag:
495           build_tag: ''
496       - functest-pi-EXTERNAL_NETWORK:
497           EXTERNAL_NETWORK: public
498       - functest-pi-VOLUME_DEVICE_NAME:
499           VOLUME_DEVICE_NAME: sdb
500       - functest-pi-IMAGE_PROPERTIES:
501           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
502     builders:
503       - functest-pi-run-containers:
504           <<: *functest-pi-run-containers
505
506 - project:
507     name: 'functest-pi-ollivier-functest-benchmarking-cntt'
508     <<: *functest-pi-params
509     volumes:
510       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
511       - /home/opnfv/functest/images:/home/opnfv/functest/images
512     env:
513       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
514       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
515       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
516     published_ports:
517     container: 'functest-benchmarking-cntt'
518     test:
519       - rally_full_cntt
520       - rally_jobs_cntt
521     privileged: 'false'
522     network: bridge
523     uid: 1000
524     gid: 1000
525     jobs:
526       - 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-{test}-run'
527
528 - job-template:
529     name: 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
530     parameters:
531       - functest-pi-slave:
532           slave: '{slave}'
533       - functest-pi-build_tag:
534           build_tag: ''
535       - functest-pi-EXTERNAL_NETWORK:
536           EXTERNAL_NETWORK: public
537       - functest-pi-VOLUME_DEVICE_NAME:
538           VOLUME_DEVICE_NAME: sdb
539       - functest-pi-IMAGE_PROPERTIES:
540           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
541     builders:
542       - functest-pi-run-containers:
543           <<: *functest-pi-run-containers
544
545 - project:
546     name: 'functest-pi-ollivier-functest-vnf'
547     <<: *functest-pi-params
548     volumes:
549       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
550       - /home/opnfv/functest/images:/home/opnfv/functest/images
551     env:
552       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
553       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
554       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
555     published_ports:
556     container: 'functest-vnf'
557     test:
558       - cloudify
559       - cloudify_ims
560       - heat_ims
561       - vyos_vrouter
562       - juju_epc
563     privileged: 'false'
564     network: bridge
565     uid: 1000
566     gid: 1000
567     jobs:
568       - 'functest-pi-ollivier-functest-vnf-{tag}-{test}-run'
569
570 - builder:
571     name: functest-pi-zip
572     builders:
573       - shell: |
574           set +x
575           volumes=;
576           if [ "{volumes}" != "None" ]; then
577             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
578               do volumes="-v $i $volumes"; done
579           fi
580           env=;
581           if [ "{env}" != "None" ]; then
582             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
583               do env="-e $i $env"; done
584           fi
585           published_ports=;
586           if [ "{published_ports}" != "None" ]; then
587             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
588               do published_ports="-p $i $published_ports"; done
589           fi
590           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
591           if [ "{repo}" = "_" ]; then
592             image={container}:{tag}
593           elif [ "{port}" = "None" ]; then
594             image={repo}/{container}:{tag}
595           else
596             image={repo}:{port}/{container}:{tag}
597           fi
598           sudo mkdir -p $WORKSPACE/results
599           sudo chown {uid}:{gid} $WORKSPACE/results
600           sudo docker run --rm \
601             $volumes \
602             $env \
603             $published_ports \
604             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
605             -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
606             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
607             -v /home/opnfv/functest/.boto:/etc/boto.cfg \
608             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
609             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
610             -e BUILD_TAG=$BUILD_TAG \
611             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
612             $image zip_campaign
613
614 - job-template:
615     name: 'functest-pi-{tag}-zip'
616     parameters:
617       - functest-pi-slave:
618           slave: '{slave}'
619       - functest-pi-build_tag:
620           build_tag: ''
621       - functest-pi-EXTERNAL_NETWORK:
622           EXTERNAL_NETWORK: public
623       - functest-pi-VOLUME_DEVICE_NAME:
624           VOLUME_DEVICE_NAME: sdb
625       - functest-pi-IMAGE_PROPERTIES:
626           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
627     builders:
628       - functest-pi-zip:
629           <<: *functest-pi-containers
630           volumes: '{volumes}'
631           env: '{env}'
632           uid: '{uid}'
633           gid: '{gid}'
634           published_ports: '{published_ports}'
635
636 - project:
637     name: 'functest-pi-{tag}-zip'
638     <<: *functest-pi-params
639     volumes:
640       - /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file
641       - /home/opnfv/functest/images:/home/opnfv/functest/images
642     env:
643       - EXTERNAL_NETWORK=$EXTERNAL_NETWORK
644       - VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME
645       - IMAGE_PROPERTIES=$IMAGE_PROPERTIES
646     published_ports:
647     container: 'functest-healthcheck'
648     uid: 1000
649     gid: 1000
650     jobs:
651       - 'functest-pi-{tag}-zip'
652
653 - job-template:
654     name: 'functest-pi-{tag}-daily'
655     project-type: multijob
656     triggers:
657       - timed: '@weekly'
658     parameters:
659       - functest-pi-slave:
660           slave: '{slave}'
661       - functest-pi-build_tag:
662           build_tag: ''
663       - functest-pi-EXTERNAL_NETWORK:
664           EXTERNAL_NETWORK: public
665       - functest-pi-VOLUME_DEVICE_NAME:
666           VOLUME_DEVICE_NAME: sdb
667       - functest-pi-IMAGE_PROPERTIES:
668           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
669     # PyYAML and yamllint differ here
670     # see https://github.com/yaml/pyyaml/issues/234
671     # yamllint disable rule:indentation
672     properties:
673       - build-blocker:
674           blocking-jobs:
675           - ^functest-(pi-)*{tag}-(daily|docker|review)$
676     # yamllint enable rule:indentation
677     builders:
678       - multijob:
679           name: remove former images
680           projects:
681             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
682               <<: *functest-pi-jobs
683             - name: 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
684               <<: *functest-pi-jobs
685             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
686               <<: *functest-pi-jobs
687             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
688               <<: *functest-pi-jobs
689             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
690               <<: *functest-pi-jobs
691             - name: 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
692               <<: *functest-pi-jobs
693       - multijob:
694           name: pull containers
695           projects:
696             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
697               <<: *functest-pi-jobs
698             - name: 'functest-pi-ollivier-functest-smoke-{tag}-pull'
699               <<: *functest-pi-jobs
700             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
701               <<: *functest-pi-jobs
702             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
703               <<: *functest-pi-jobs
704             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
705               <<: *functest-pi-jobs
706             - name: 'functest-pi-ollivier-functest-vnf-{tag}-pull'
707               <<: *functest-pi-jobs
708       - multijob:
709           name: ollivier/functest-healthcheck:{tag}
710           projects:
711             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-connection_check-run'
712               <<: *functest-pi-jobs
713             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork1-run'
714               <<: *functest-pi-jobs
715             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork2-run'
716               <<: *functest-pi-jobs
717             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready1-run'
718               <<: *functest-pi-jobs
719             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready2-run'
720               <<: *functest-pi-jobs
721             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm1-run'
722               <<: *functest-pi-jobs
723             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm2-run'
724               <<: *functest-pi-jobs
725             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_ssh-run'
726               <<: *functest-pi-jobs
727             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_userdata-run'
728               <<: *functest-pi-jobs
729             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-cinder_test-run'
730               <<: *functest-pi-jobs
731             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-odl-run'
732               <<: *functest-pi-jobs
733             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_smoke-run'
734               <<: *functest-pi-jobs
735             - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_horizon-run'
736               <<: *functest-pi-jobs
737       - multijob:
738           name: ollivier/functest-smoke:{tag}
739           projects:
740             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_neutron-run'
741               <<: *functest-pi-jobs
742             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cinder-run'
743               <<: *functest-pi-jobs
744             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_keystone-run'
745               <<: *functest-pi-jobs
746             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_heat-run'
747               <<: *functest-pi-jobs
748             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_telemetry-run'
749               <<: *functest-pi-jobs
750             - name: 'functest-pi-ollivier-functest-smoke-{tag}-rally_sanity-run'
751               <<: *functest-pi-jobs
752             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_compute-run'
753               <<: *functest-pi-jobs
754             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_object-run'
755               <<: *functest-pi-jobs
756             - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_platform-run'
757               <<: *functest-pi-jobs
758             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_full-run'
759               <<: *functest-pi-jobs
760             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_scenario-run'
761               <<: *functest-pi-jobs
762             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_slow-run'
763               <<: *functest-pi-jobs
764             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_admin-run'
765               <<: *functest-pi-jobs
766             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_member-run'
767               <<: *functest-pi-jobs
768             - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_reader-run'
769               <<: *functest-pi-jobs
770             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_barbican-run'
771               <<: *functest-pi-jobs
772             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_octavia-run'
773               <<: *functest-pi-jobs
774             - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cyborg-run'
775               <<: *functest-pi-jobs
776       - multijob:
777           name: ollivier/functest-smoke-cntt:{tag}
778           projects:
779             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
780               <<: *functest-pi-jobs
781             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
782               <<: *functest-pi-jobs
783             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
784               <<: *functest-pi-jobs
785             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
786               <<: *functest-pi-jobs
787             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
788               <<: *functest-pi-jobs
789             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
790               <<: *functest-pi-jobs
791             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
792               <<: *functest-pi-jobs
793             - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
794               <<: *functest-pi-jobs
795       - multijob:
796           name: ollivier/functest-benchmarking:{tag}
797           projects:
798             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_full-run'
799               <<: *functest-pi-jobs
800             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_jobs-run'
801               <<: *functest-pi-jobs
802             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-vmtp-run'
803               <<: *functest-pi-jobs
804             - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-shaker-run'
805               <<: *functest-pi-jobs
806       - multijob:
807           name: ollivier/functest-benchmarking-cntt:{tag}
808           projects:
809             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
810               <<: *functest-pi-jobs
811             - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
812               <<: *functest-pi-jobs
813       - multijob:
814           name: ollivier/functest-vnf:{tag}
815           projects:
816             - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify-run'
817               <<: *functest-pi-jobs
818             - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify_ims-run'
819               <<: *functest-pi-jobs
820             - name: 'functest-pi-ollivier-functest-vnf-{tag}-heat_ims-run'
821               <<: *functest-pi-jobs
822             - name: 'functest-pi-ollivier-functest-vnf-{tag}-vyos_vrouter-run'
823               <<: *functest-pi-jobs
824             - name: 'functest-pi-ollivier-functest-vnf-{tag}-juju_epc-run'
825               <<: *functest-pi-jobs
826       - multijob:
827           name: dump all campaign data
828           projects:
829             - name: 'functest-pi-{tag}-zip'
830               <<: *functest-pi-jobs
831     publishers:
832       - email-ext:
833           failure: false
834           first-failure: true
835           fixed: true
836           recipients: cedric.ollivier@orange.com
837
838 - project:
839     name: 'functest-pi-daily'
840     <<: *functest-pi-params
841     jobs:
842       - 'functest-pi-{tag}-daily'
843
844 - view:
845     name: functest-pi
846     view-type: list
847     columns:
848       - status
849       - weather
850       - job
851       - last-success
852       - last-failure
853       - last-duration
854     regex: ^functest-pi-[a-z-0-9.]+-daily$