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