6bf20ef51d15a72c106837e341885cdb954c831a
[releng.git] / jjb / functest / functest.yaml
1 ---
2 - functest-jobs: &functest-jobs
3     name: 'functest-jobs'
4     current-parameters: true
5
6 - functest-params: &functest-params
7     name: 'functest-params'
8     repo: 'opnfv'
9     port:
10     tag:
11       - latest:
12           branch: master
13           slave: lf-virtual9
14           dashboard_url: http://172.30.13.94
15       - kali:
16           branch: stable/kali
17           slave: lf-pod4-3
18           dashboard_url: http://172.30.12.88
19       - jerma:
20           branch: stable/jerma
21           slave: lf-pod4
22           dashboard_url: http://172.30.12.83
23       - iruya:
24           branch: stable/iruya
25           slave: lf-virtual4
26           dashboard_url: http://172.30.13.89
27       - hunter:
28           branch: stable/hunter
29           slave: lf-virtual6
30           dashboard_url: http://172.30.13.91
31       - arm64-latest:
32           branch: master
33           slave: lf-virtual9
34           dashboard_url: http://172.30.13.94
35       - arm64-kali:
36           branch: stable/kali
37           slave: lf-pod4-3
38           dashboard_url: http://172.30.12.88
39       - arm64-jerma:
40           branch: stable/jerma
41           slave: lf-pod4
42           dashboard_url: http://172.30.12.83
43       - arm64-iruya:
44           branch: stable/iruya
45           slave: lf-virtual4
46           dashboard_url: http://172.30.13.89
47       - arm64-hunter:
48           branch: stable/hunter
49           slave: lf-virtual6
50           dashboard_url: http://172.30.13.91
51
52 - parameter:
53     name: functest-slave
54     parameters:
55       - label:
56           name: slave
57           default: '{slave}'
58
59 - parameter:
60     name: functest-build_tag
61     parameters:
62       - random-string:
63           name: build_tag
64
65 - parameter:
66     name: functest-branch
67     parameters:
68       - string:
69           name: branch
70           default: '{branch}'
71
72 - parameter:
73     name: functest-DEBUG
74     parameters:
75       - string:
76           name: DEBUG
77           default: 'true'
78
79 - parameter:
80     name: functest-EXTERNAL_NETWORK
81     parameters:
82       - string:
83           name: EXTERNAL_NETWORK
84           default: public
85
86 - parameter:
87     name: functest-VOLUME_DEVICE_NAME
88     parameters:
89       - string:
90           name: VOLUME_DEVICE_NAME
91           default: sdb
92
93 - parameter:
94     name: functest-IMAGE_PROPERTIES
95     parameters:
96       - string:
97           name: IMAGE_PROPERTIES
98           default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
99
100 - functest-containers: &functest-containers
101     name: 'functest-containers'
102     repo: '{repo}'
103     port: '{port}'
104     container: '{container}'
105     tag: '{tag}'
106
107 - functest-run-containers: &functest-run-containers
108     name: 'functest-run-containers'
109     <<: *functest-containers
110     test: '{test}'
111     dashboard_url: '{dashboard_url}'
112     privileged: '{privileged}'
113     network: '{network}'
114
115 - builder:
116     name: functest-pull-containers
117     builders:
118       - shell: |
119           set +x
120           if [ "{repo}" = "_" ]; then
121             image={container}:{tag}
122           elif [ "{port}" = "None" ]; then
123             image={repo}/{container}:{tag}
124           else
125             image={repo}:{port}/{container}:{tag}
126           fi
127           sudo docker pull $image
128
129 - builder:
130     name: functest-run-containers
131     builders:
132       - shell: |
133           set +x
134           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
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           volumes=""
143           case "{tag}" in
144             arm-hunter)
145               volumes="-v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static" ;;
146             arm64-hunter)
147               volumes="-v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static" ;;
148           esac
149           sudo docker run --rm \
150             --privileged={privileged} \
151             --network={network} \
152             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
153             -e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
154             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
155             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
156             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
157             -e NODE_NAME=$slave \
158             -e BUILD_TAG=$BUILD_TAG \
159             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
160             -e DEBUG=$DEBUG \
161             -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
162             -e DASHBOARD_URL={dashboard_url} \
163             -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
164             -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
165             -v /home/opnfv/functest/.boto:/root/.boto \
166             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
167             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
168             $volumes $image run_tests -t {test} -r -p
169
170 - builder:
171     name: functest-remove-images
172     builders:
173       - shell: |
174           set +x
175           if [ "{repo}" = "_" ]; then
176             image={container}:{tag}
177           elif [ "{port}" = "None" ]; then
178             image={repo}/{container}:{tag}
179           else
180             image={repo}:{port}/{container}:{tag}
181           fi
182           sudo docker rmi $image || true
183
184 - functest-build-containers: &functest-build-containers
185     name: 'functest-build-containers'
186     <<: *functest-containers
187     ref_arg: '{ref_arg}'
188     path: '{path}'
189
190 - builder:
191     name: functest-build-containers
192     builders:
193       - shell: |
194           set +x
195           if [ "{repo}" = "_" ]; then
196             image={container}:{tag}
197           elif [ "{port}" = "None" ]; then
198             image={repo}/{container}:{tag}
199           else
200             image={repo}:{port}/{container}:{tag}
201           fi
202           if [ "{ref_arg}" = "None" ]; then
203             build_arg=""
204           else
205             build_arg="--build-arg {ref_arg}={ref}"
206           fi
207           cd {path}
208           sudo docker build $build_arg \
209             --pull=false --no-cache --force-rm=true \
210             -t $image .
211
212 - scm:
213     name: functest-scm
214     scm:
215       - git:
216           url: https://gerrit.opnfv.org/gerrit/functest
217           refspec: '+refs/changes/*:refs/changes/*'
218           branches:
219             - '{ref}'
220
221 - job-template:
222     name: 'functest-{repo}-{container}-{tag}-pull'
223     parameters:
224       - functest-slave:
225           slave: '{slave}'
226     builders:
227       - functest-pull-containers:
228           <<: *functest-containers
229
230 - project:
231     name: 'functest-opnfv-functest-healthcheck-pull'
232     <<: *functest-params
233     container: 'functest-healthcheck'
234     jobs:
235       - 'functest-{repo}-{container}-{tag}-pull'
236
237 - project:
238     name: 'functest-opnfv-functest-smoke-pull'
239     <<: *functest-params
240     container: 'functest-smoke'
241     jobs:
242       - 'functest-{repo}-{container}-{tag}-pull'
243
244 - project:
245     name: 'functest-opnfv-functest-smoke-cntt-pull'
246     <<: *functest-params
247     container: 'functest-smoke-cntt'
248     jobs:
249       - 'functest-{repo}-{container}-{tag}-pull'
250
251 - project:
252     name: 'functest-opnfv-functest-benchmarking-pull'
253     <<: *functest-params
254     container: 'functest-benchmarking'
255     jobs:
256       - 'functest-{repo}-{container}-{tag}-pull'
257
258 - project:
259     name: 'functest-opnfv-functest-benchmarking-cntt-pull'
260     <<: *functest-params
261     container: 'functest-benchmarking-cntt'
262     jobs:
263       - 'functest-{repo}-{container}-{tag}-pull'
264
265 - project:
266     name: 'functest-opnfv-functest-vnf-pull'
267     <<: *functest-params
268     container: 'functest-vnf'
269     jobs:
270       - 'functest-{repo}-{container}-{tag}-pull'
271
272 - job-template:
273     name: 'functest-{repo}-{container}-{tag}-rmi'
274     parameters:
275       - functest-slave:
276           slave: '{slave}'
277     builders:
278       - functest-remove-images:
279           <<: *functest-containers
280
281 - project:
282     name: 'functest-opnfv-functest-healthcheck-rmi'
283     <<: *functest-params
284     container: 'functest-healthcheck'
285     jobs:
286       - 'functest-{repo}-{container}-{tag}-rmi'
287
288 - project:
289     name: 'functest-opnfv-functest-smoke-rmi'
290     <<: *functest-params
291     container: 'functest-smoke'
292     jobs:
293       - 'functest-{repo}-{container}-{tag}-rmi'
294
295 - project:
296     name: 'functest-opnfv-functest-smoke-cntt-rmi'
297     <<: *functest-params
298     container: 'functest-smoke-cntt'
299     jobs:
300       - 'functest-{repo}-{container}-{tag}-rmi'
301
302 - project:
303     name: 'functest-opnfv-functest-benchmarking-rmi'
304     <<: *functest-params
305     container: 'functest-benchmarking'
306     jobs:
307       - 'functest-{repo}-{container}-{tag}-rmi'
308
309 - project:
310     name: 'functest-opnfv-functest-benchmarking-cntt-rmi'
311     <<: *functest-params
312     container: 'functest-benchmarking-cntt'
313     jobs:
314       - 'functest-{repo}-{container}-{tag}-rmi'
315
316 - project:
317     name: 'functest-opnfv-functest-vnf-rmi'
318     <<: *functest-params
319     container: 'functest-vnf'
320     jobs:
321       - 'functest-{repo}-{container}-{tag}-rmi'
322
323 - job-template:
324     name: 'functest-{repo}-{container}-{tag}-{test}-run'
325     parameters:
326       - functest-slave:
327           slave: '{slave}'
328       - functest-build_tag:
329           build_tag: ''
330       - functest-DEBUG:
331           DEBUG: 'true'
332       - functest-EXTERNAL_NETWORK:
333           EXTERNAL_NETWORK: public
334       - functest-VOLUME_DEVICE_NAME:
335           VOLUME_DEVICE_NAME: sdb
336       - functest-IMAGE_PROPERTIES:
337           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
338     builders:
339       - functest-run-containers:
340           <<: *functest-run-containers
341
342 - project:
343     name: 'functest-opnfv-functest-healthcheck'
344     <<: *functest-params
345     container: 'functest-healthcheck'
346     test:
347       - connection_check
348       - tenantnetwork1
349       - tenantnetwork2
350       - vmready1
351       - vmready2
352       - singlevm1
353       - singlevm2
354       - vping_ssh
355       - vping_userdata
356       - cinder_test
357       - odl
358       - tempest_smoke
359       - tempest_horizon
360     privileged: 'false'
361     network: bridge
362     jobs:
363       - 'functest-{repo}-{container}-{tag}-{test}-run'
364
365 - project:
366     name: 'functest-opnfv-functest-smoke'
367     <<: *functest-params
368     container: 'functest-smoke'
369     test:
370       - tempest_neutron
371       - tempest_cinder
372       - tempest_keystone
373       - tempest_heat
374       - tempest_telemetry
375       - rally_sanity
376       - refstack_defcore
377       - refstack_compute
378       - refstack_object
379       - refstack_platform
380       - tempest_full
381       - tempest_scenario
382       - tempest_slow
383       - patrole
384       - patrole_admin
385       - patrole_member
386       - patrole_reader
387       - networking-bgpvpn
388       - networking-sfc
389       - tempest_barbican
390       - tempest_octavia
391       - tempest_cyborg
392     exclude:
393       - tag: latest
394         test: refstack_defcore
395       - tag: latest
396         test: networking-bgpvpn
397       - tag: latest
398         test: networking-sfc
399       - tag: latest
400         test: patrole
401       - tag: kali
402         test: refstack_defcore
403       - tag: kali
404         test: networking-bgpvpn
405       - tag: kali
406         test: networking-sfc
407       - tag: kali
408         test: patrole_admin
409       - tag: kali
410         test: patrole_member
411       - tag: kali
412         test: patrole_reader
413       - tag: jerma
414         test: refstack_defcore
415       - tag: jerma
416         test: networking-bgpvpn
417       - tag: jerma
418         test: networking-sfc
419       - tag: jerma
420         test: patrole_admin
421       - tag: jerma
422         test: patrole_member
423       - tag: jerma
424         test: patrole_reader
425       - tag: jerma
426         test: tempest_cyborg
427       - tag: iruya
428         test: refstack_defcore
429       - tag: iruya
430         test: patrole_admin
431       - tag: iruya
432         test: patrole_member
433       - tag: iruya
434         test: patrole_reader
435       - tag: iruya
436         test: tempest_cyborg
437       - tag: hunter
438         test: refstack_compute
439       - tag: hunter
440         test: refstack_object
441       - tag: hunter
442         test: refstack_platform
443       - tag: hunter
444         test: tempest_octavia
445       - tag: hunter
446         test: tempest_telemetry
447       - tag: hunter
448         test: patrole_admin
449       - tag: hunter
450         test: patrole_member
451       - tag: hunter
452         test: patrole_reader
453       - tag: hunter
454         test: tempest_cyborg
455       - tag: arm64-latest
456         test: refstack_defcore
457       - tag: arm64-latest
458         test: networking-bgpvpn
459       - tag: arm64-latest
460         test: networking-sfc
461       - tag: arm64-latest
462         test: patrole
463       - tag: arm64-kali
464         test: refstack_defcore
465       - tag: arm64-kali
466         test: networking-bgpvpn
467       - tag: arm64-kali
468         test: networking-sfc
469       - tag: arm64-kali
470         test: patrole_admin
471       - tag: arm64-kali
472         test: patrole_member
473       - tag: arm64-kali
474         test: patrole_reader
475       - tag: arm64-jerma
476         test: refstack_defcore
477       - tag: arm64-jerma
478         test: networking-bgpvpn
479       - tag: arm64-jerma
480         test: networking-sfc
481       - tag: arm64-jerma
482         test: patrole_admin
483       - tag: arm64-jerma
484         test: patrole_member
485       - tag: arm64-jerma
486         test: patrole_reader
487       - tag: arm64-jerma
488         test: tempest_cyborg
489       - tag: arm64-iruya
490         test: refstack_defcore
491       - tag: arm64-iruya
492         test: patrole_admin
493       - tag: arm64-iruya
494         test: patrole_member
495       - tag: arm64-iruya
496         test: patrole_reader
497       - tag: arm64-iruya
498         test: tempest_cyborg
499       - tag: arm64-hunter
500         test: refstack_compute
501       - tag: arm64-hunter
502         test: refstack_object
503       - tag: arm64-hunter
504         test: refstack_platform
505       - tag: arm64-hunter
506         test: tempest_octavia
507       - tag: arm64-hunter
508         test: tempest_telemetry
509       - tag: arm64-hunter
510         test: patrole_admin
511       - tag: arm64-hunter
512         test: patrole_member
513       - tag: arm64-hunter
514         test: patrole_reader
515       - tag: arm64-hunter
516         test: tempest_cyborg
517     privileged: 'false'
518     network: bridge
519     jobs:
520       - 'functest-{repo}-{container}-{tag}-{test}-run'
521
522 - project:
523     name: 'functest-opnfv-functest-smoke-cntt'
524     <<: *functest-params
525     container: 'functest-smoke-cntt'
526     test:
527       - tempest_neutron_cntt
528       - tempest_cinder_cntt
529       - tempest_keystone_cntt
530       - tempest_heat_cntt
531       - rally_sanity_cntt
532       - tempest_full_cntt
533       - tempest_scenario_cntt
534       - tempest_slow_cntt
535     privileged: 'false'
536     network: bridge
537     jobs:
538       - 'functest-{repo}-{container}-{tag}-{test}-run'
539
540 - project:
541     name: 'functest-opnfv-functest-benchmarking'
542     <<: *functest-params
543     container: 'functest-benchmarking'
544     test:
545       - rally_full
546       - rally_jobs
547       - vmtp
548       - shaker
549     privileged: 'false'
550     network: bridge
551     jobs:
552       - 'functest-{repo}-{container}-{tag}-{test}-run'
553
554 - project:
555     name: 'functest-opnfv-functest-benchmarking-cntt'
556     <<: *functest-params
557     container: 'functest-benchmarking-cntt'
558     test:
559       - rally_full_cntt
560       - rally_jobs_cntt
561     privileged: 'false'
562     network: bridge
563     jobs:
564       - 'functest-{repo}-{container}-{tag}-{test}-run'
565
566 - project:
567     name: 'functest-opnfv-functest-vnf'
568     <<: *functest-params
569     container: 'functest-vnf'
570     test:
571       - cloudify
572       - cloudify_ims
573       - heat_ims
574       - vyos_vrouter
575       - juju_epc
576     privileged: 'false'
577     network: bridge
578     jobs:
579       - 'functest-{repo}-{container}-{tag}-{test}-run'
580
581
582 - builder:
583     name: functest-zip
584     builders:
585       - shell: |
586           set +x
587           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
588           if [ "{repo}" = "_" ]; then
589             image={container}:{tag}
590           elif [ "{port}" = "None" ]; then
591             image={repo}/{container}:{tag}
592           else
593             image={repo}:{port}/{container}:{tag}
594           fi
595           volumes=""
596           case "{tag}" in
597             arm-hunter)
598               volumes="-v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static" ;;
599             arm64-hunter)
600               volumes="-v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static" ;;
601           esac
602           sudo docker run --rm \
603             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
604             -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
605             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
606             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
607             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
608             -e BUILD_TAG=$BUILD_TAG \
609             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
610             -e DEBUG=$DEBUG \
611             -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
612             -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
613             -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
614             -v /home/opnfv/functest/.boto:/root/.boto \
615             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
616             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
617             $volumes $image zip_campaign
618
619 - job-template:
620     name: 'functest-{tag}-zip'
621     parameters:
622       - functest-slave:
623           slave: '{slave}'
624       - functest-build_tag:
625           build_tag: ''
626       - functest-DEBUG:
627           DEBUG: 'true'
628       - functest-EXTERNAL_NETWORK:
629           EXTERNAL_NETWORK: public
630       - functest-VOLUME_DEVICE_NAME:
631           VOLUME_DEVICE_NAME: sdb
632       - functest-IMAGE_PROPERTIES:
633           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
634     builders:
635       - functest-zip:
636           <<: *functest-containers
637
638 - project:
639     name: 'functest-{tag}-zip'
640     <<: *functest-params
641     container: 'functest-healthcheck'
642     jobs:
643       - 'functest-{tag}-zip'
644
645 - job-template:
646     name: 'functest-{tag}-daily'
647     project-type: multijob
648     triggers:
649       - timed: '@weekly'
650     parameters:
651       - functest-slave:
652           slave: '{slave}'
653       - functest-build_tag:
654           build_tag: ''
655       - functest-DEBUG:
656           DEBUG: 'true'
657       - functest-EXTERNAL_NETWORK:
658           EXTERNAL_NETWORK: public
659       - functest-VOLUME_DEVICE_NAME:
660           VOLUME_DEVICE_NAME: sdb
661       - functest-IMAGE_PROPERTIES:
662           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
663     properties:
664       - build-blocker:
665           use-build-blocker: true
666           blocking-level: 'NODE'
667           blocking-jobs:
668             - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
669     builders:
670       - multijob:
671           name: remove former images
672           projects:
673             - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
674               <<: *functest-jobs
675             - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
676               <<: *functest-jobs
677             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rmi'
678               <<: *functest-jobs
679             - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
680               <<: *functest-jobs
681             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rmi'
682               <<: *functest-jobs
683             - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
684               <<: *functest-jobs
685       - multijob:
686           name: pull containers
687           projects:
688             - name: 'functest-opnfv-functest-healthcheck-{tag}-pull'
689               <<: *functest-jobs
690             - name: 'functest-opnfv-functest-smoke-{tag}-pull'
691               <<: *functest-jobs
692             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-pull'
693               <<: *functest-jobs
694             - name: 'functest-opnfv-functest-benchmarking-{tag}-pull'
695               <<: *functest-jobs
696             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-pull'
697               <<: *functest-jobs
698             - name: 'functest-opnfv-functest-vnf-{tag}-pull'
699               <<: *functest-jobs
700       - multijob:
701           name: opnfv/functest-healthcheck:{tag}
702           projects:
703             - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
704               <<: *functest-jobs
705             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
706               <<: *functest-jobs
707             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
708               <<: *functest-jobs
709             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
710               <<: *functest-jobs
711             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
712               <<: *functest-jobs
713             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
714               <<: *functest-jobs
715             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
716               <<: *functest-jobs
717             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
718               <<: *functest-jobs
719             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
720               <<: *functest-jobs
721             - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
722               <<: *functest-jobs
723             - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
724               <<: *functest-jobs
725             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
726               <<: *functest-jobs
727             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
728               <<: *functest-jobs
729       - multijob:
730           name: opnfv/functest-smoke:{tag}
731           projects:
732             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_neutron-run'
733               <<: *functest-jobs
734             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
735               <<: *functest-jobs
736             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
737               <<: *functest-jobs
738             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_heat-run'
739               <<: *functest-jobs
740             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_telemetry-run'
741               <<: *functest-jobs
742             - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
743               <<: *functest-jobs
744             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
745               <<: *functest-jobs
746             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
747               <<: *functest-jobs
748             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
749               <<: *functest-jobs
750             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
751               <<: *functest-jobs
752             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
753               <<: *functest-jobs
754             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
755               <<: *functest-jobs
756             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
757               <<: *functest-jobs
758             - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
759               <<: *functest-jobs
760             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
761               <<: *functest-jobs
762             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
763               <<: *functest-jobs
764             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
765               <<: *functest-jobs
766             - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
767               <<: *functest-jobs
768             - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
769               <<: *functest-jobs
770             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_barbican-run'
771               <<: *functest-jobs
772             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
773               <<: *functest-jobs
774             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
775               <<: *functest-jobs
776       - multijob:
777           name: opnfv/functest-smoke-cntt:{tag}
778           projects:
779             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
780               <<: *functest-jobs
781             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
782               <<: *functest-jobs
783             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
784               <<: *functest-jobs
785             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
786               <<: *functest-jobs
787             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
788               <<: *functest-jobs
789             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
790               <<: *functest-jobs
791             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
792               <<: *functest-jobs
793             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
794               <<: *functest-jobs
795       - multijob:
796           name: opnfv/functest-benchmarking:{tag}
797           projects:
798             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
799               <<: *functest-jobs
800             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
801               <<: *functest-jobs
802             - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
803               <<: *functest-jobs
804             - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
805               <<: *functest-jobs
806       - multijob:
807           name: opnfv/functest-benchmarking-cntt:{tag}
808           projects:
809             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
810               <<: *functest-jobs
811             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
812               <<: *functest-jobs
813       - multijob:
814           name: opnfv/functest-vnf:{tag}
815           projects:
816             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
817               <<: *functest-jobs
818             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
819               <<: *functest-jobs
820             - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
821               <<: *functest-jobs
822             - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
823               <<: *functest-jobs
824             - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
825               <<: *functest-jobs
826       - multijob:
827           name: dump all campaign data
828           projects:
829             - name: 'functest-{tag}-zip'
830               <<: *functest-jobs
831
832 - job-template:
833     name: 'functest-{repo}-{container}-{tag}-gate'
834     parameters:
835       - functest-slave:
836           slave: '{slave}'
837     scm:
838       - functest-scm:
839           ref: $GERRIT_REFSPEC
840     builders:
841       - functest-build-containers:
842           <<: *functest-build-containers
843           ref: $GERRIT_REFSPEC
844
845 - job-template:
846     name: 'functest-{repo}-{container}-{tag}-check'
847     parameters:
848       - functest-slave:
849           slave: '{slave}'
850       - functest-branch:
851           branch: '{branch}'
852     scm:
853       - functest-scm:
854           ref: $branch
855     builders:
856       - functest-build-containers:
857           <<: *functest-build-containers
858           ref: $branch
859
860 - project:
861     name: 'functest-_-alpine-3.12-rmi'
862     repo: _
863     port:
864     container: alpine
865     tag: '3.12'
866     slave: master
867     jobs:
868       - 'functest-{repo}-{container}-{tag}-rmi'
869
870 - project:
871     name: 'functest-_-alpine-3.12-pull'
872     repo: _
873     port:
874     container: alpine
875     tag: '3.12'
876     slave: master
877     jobs:
878       - 'functest-{repo}-{container}-{tag}-pull'
879
880 - project:
881     name: functest-opnfv-functest-core-{tag}-build
882     <<: *functest-params
883     container: functest-core
884     ref_arg: BRANCH
885     path: docker/core
886     exclude:
887       - tag: arm64-latest
888       - tag: arm64-kali
889       - tag: arm64-jerma
890       - tag: arm64-iruya
891       - tag: arm64-hunter
892     jobs:
893       - 'functest-{repo}-{container}-{tag}-gate'
894       - 'functest-{repo}-{container}-{tag}-check'
895
896 - project:
897     name: functest-opnfv-functest-tempest-{tag}-build
898     <<: *functest-params
899     container: functest-tempest
900     ref_arg: BRANCH
901     path: docker/tempest
902     jobs:
903       - 'functest-{repo}-{container}-{tag}-gate'
904       - 'functest-{repo}-{container}-{tag}-check'
905     exclude:
906       - tag: latest
907       - tag: kali
908       - tag: jerma
909       - tag: arm64-latest
910       - tag: arm64-kali
911       - tag: arm64-jerma
912       - tag: arm64-iruya
913       - tag: arm64-hunter
914
915 - project:
916     name: functest-opnfv-functest-healthcheck-{tag}-build
917     <<: *functest-params
918     container: functest-healthcheck
919     ref_arg: BRANCH
920     path: docker/healthcheck
921     exclude:
922       - tag: arm64-latest
923       - tag: arm64-kali
924       - tag: arm64-jerma
925       - tag: arm64-iruya
926       - tag: arm64-hunter
927     jobs:
928       - 'functest-{repo}-{container}-{tag}-gate'
929       - 'functest-{repo}-{container}-{tag}-check'
930
931 - project:
932     name: functest-opnfv-functest-smoke-{tag}-build
933     <<: *functest-params
934     container: functest-smoke
935     ref_arg: BRANCH
936     path: docker/smoke
937     exclude:
938       - tag: arm64-latest
939       - tag: arm64-kali
940       - tag: arm64-jerma
941       - tag: arm64-iruya
942       - tag: arm64-hunter
943     jobs:
944       - 'functest-{repo}-{container}-{tag}-gate'
945       - 'functest-{repo}-{container}-{tag}-check'
946
947 - project:
948     name: functest-opnfv-functest-benchmarking-{tag}-build
949     <<: *functest-params
950     container: functest-benchmarking
951     ref_arg: BRANCH
952     path: docker/benchmarking
953     exclude:
954       - tag: arm64-latest
955       - tag: arm64-kali
956       - tag: arm64-jerma
957       - tag: arm64-iruya
958       - tag: arm64-hunter
959     jobs:
960       - 'functest-{repo}-{container}-{tag}-gate'
961       - 'functest-{repo}-{container}-{tag}-check'
962
963 - project:
964     name: functest-opnfv-functest-benchmarking-cntt-{tag}-build
965     <<: *functest-params
966     container: functest-benchmarking-cntt
967     ref_arg: BRANCH
968     path: docker/benchmarking-cntt
969     exclude:
970       - tag: arm64-latest
971       - tag: arm64-kali
972       - tag: arm64-jerma
973       - tag: arm64-iruya
974       - tag: arm64-hunter
975     jobs:
976       - 'functest-{repo}-{container}-{tag}-gate'
977       - 'functest-{repo}-{container}-{tag}-check'
978
979 - project:
980     name: functest-opnfv-functest-vnf-{tag}-build
981     <<: *functest-params
982     container: functest-vnf
983     ref_arg:
984     path: docker/vnf
985     exclude:
986       - tag: arm64-latest
987       - tag: arm64-kali
988       - tag: arm64-jerma
989       - tag: arm64-iruya
990       - tag: arm64-hunter
991     jobs:
992       - 'functest-{repo}-{container}-{tag}-gate'
993       - 'functest-{repo}-{container}-{tag}-check'
994
995 - project:
996     name: functest-opnfv-functest-smoke-cntt-{tag}-build
997     <<: *functest-params
998     container: functest-smoke-cntt
999     ref_arg: BRANCH
1000     path: docker/smoke-cntt
1001     exclude:
1002       - tag: arm64-latest
1003       - tag: arm64-kali
1004       - tag: arm64-jerma
1005       - tag: arm64-iruya
1006       - tag: arm64-hunter
1007     jobs:
1008       - 'functest-{repo}-{container}-{tag}-gate'
1009       - 'functest-{repo}-{container}-{tag}-check'
1010
1011 - job-template:
1012     name: 'functest-{tag}-check'
1013     project-type: multijob
1014     parameters:
1015       - functest-slave:
1016           slave: '{slave}'
1017       - functest-build_tag:
1018           build_tag: ''
1019       - functest-branch:
1020           branch: '{branch}'
1021       - functest-DEBUG:
1022           DEBUG: 'true'
1023       - functest-EXTERNAL_NETWORK:
1024           EXTERNAL_NETWORK: public
1025       - functest-VOLUME_DEVICE_NAME:
1026           VOLUME_DEVICE_NAME: sdb
1027       - functest-IMAGE_PROPERTIES:
1028           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
1029     properties:
1030       - build-blocker:
1031           use-build-blocker: true
1032           blocking-level: 'NODE'
1033           blocking-jobs:
1034             - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
1035     builders:
1036       - multijob:
1037           name: remove former images
1038           projects:
1039             - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
1040               <<: *functest-jobs
1041             - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
1042               <<: *functest-jobs
1043             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rmi'
1044               <<: *functest-jobs
1045             - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
1046               <<: *functest-jobs
1047             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rmi'
1048               <<: *functest-jobs
1049             - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
1050               <<: *functest-jobs
1051       - multijob:
1052           name: remove dependencies
1053           projects:
1054             - name: 'functest-_-alpine-3.12-rmi'
1055               <<: *functest-jobs
1056       - multijob:
1057           name: pull dependencies
1058           projects:
1059             - name: 'functest-_-alpine-3.12-pull'
1060               <<: *functest-jobs
1061       - multijob:
1062           name: build opnfv/functest-core
1063           projects:
1064             - name: 'functest-opnfv-functest-core-{tag}-check'
1065               <<: *functest-jobs
1066       - multijob:
1067           name: build opnfv/functest-tempest
1068           projects:
1069             - name: 'functest-opnfv-functest-tempest-{tag}-check'
1070               <<: *functest-jobs
1071       - multijob:
1072           name: build containers
1073           projects:
1074             - name: 'functest-opnfv-functest-healthcheck-{tag}-check'
1075               <<: *functest-jobs
1076             - name: 'functest-opnfv-functest-smoke-{tag}-check'
1077               <<: *functest-jobs
1078             - name: 'functest-opnfv-functest-benchmarking-{tag}-check'
1079               <<: *functest-jobs
1080             - name: 'functest-opnfv-functest-vnf-{tag}-check'
1081               <<: *functest-jobs
1082       - multijob:
1083           name: build cntt containers
1084           projects:
1085             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-check'
1086               <<: *functest-jobs
1087             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-check'
1088               <<: *functest-jobs
1089       - multijob:
1090           name: opnfv/functest-healthcheck:{tag}
1091           projects:
1092             - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
1093               <<: *functest-jobs
1094             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
1095               <<: *functest-jobs
1096             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
1097               <<: *functest-jobs
1098             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
1099               <<: *functest-jobs
1100             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
1101               <<: *functest-jobs
1102             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
1103               <<: *functest-jobs
1104             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
1105               <<: *functest-jobs
1106             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
1107               <<: *functest-jobs
1108             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
1109               <<: *functest-jobs
1110             - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
1111               <<: *functest-jobs
1112             - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
1113               <<: *functest-jobs
1114             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
1115               <<: *functest-jobs
1116             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
1117               <<: *functest-jobs
1118       - multijob:
1119           name: opnfv/functest-smoke:{tag}
1120           projects:
1121             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_neutron-run'
1122               <<: *functest-jobs
1123             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
1124               <<: *functest-jobs
1125             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
1126               <<: *functest-jobs
1127             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_heat-run'
1128               <<: *functest-jobs
1129             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_telemetry-run'
1130               <<: *functest-jobs
1131             - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
1132               <<: *functest-jobs
1133             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
1134               <<: *functest-jobs
1135             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
1136               <<: *functest-jobs
1137             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
1138               <<: *functest-jobs
1139             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
1140               <<: *functest-jobs
1141             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
1142               <<: *functest-jobs
1143             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
1144               <<: *functest-jobs
1145             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
1146               <<: *functest-jobs
1147             - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
1148               <<: *functest-jobs
1149             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
1150               <<: *functest-jobs
1151             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
1152               <<: *functest-jobs
1153             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
1154               <<: *functest-jobs
1155             - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
1156               <<: *functest-jobs
1157             - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
1158               <<: *functest-jobs
1159             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_barbican-run'
1160               <<: *functest-jobs
1161             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
1162               <<: *functest-jobs
1163             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
1164               <<: *functest-jobs
1165       - multijob:
1166           name: opnfv/functest-smoke-cntt:{tag}
1167           projects:
1168             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
1169               <<: *functest-jobs
1170             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
1171               <<: *functest-jobs
1172             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
1173               <<: *functest-jobs
1174             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
1175               <<: *functest-jobs
1176             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
1177               <<: *functest-jobs
1178             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
1179               <<: *functest-jobs
1180             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
1181               <<: *functest-jobs
1182             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
1183               <<: *functest-jobs
1184       - multijob:
1185           name: opnfv/functest-benchmarking:{tag}
1186           projects:
1187             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
1188               <<: *functest-jobs
1189             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
1190               <<: *functest-jobs
1191             - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
1192               <<: *functest-jobs
1193             - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
1194               <<: *functest-jobs
1195       - multijob:
1196           name: opnfv/functest-benchmarking-cntt:{tag}
1197           projects:
1198             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
1199               <<: *functest-jobs
1200             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
1201               <<: *functest-jobs
1202       - multijob:
1203           name: opnfv/functest-vnf:{tag}
1204           projects:
1205             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
1206               <<: *functest-jobs
1207             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
1208               <<: *functest-jobs
1209             - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
1210               <<: *functest-jobs
1211             - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
1212               <<: *functest-jobs
1213             - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
1214               <<: *functest-jobs
1215
1216 - trigger:
1217     name: functest-patchset-created
1218     triggers:
1219       - gerrit:
1220           server-name: 'gerrit.opnfv.org'
1221           trigger-on:
1222             - patchset-created-event
1223             - comment-added-contains-event:
1224                 comment-contains-value: 'recheck'
1225             - comment-added-contains-event:
1226                 comment-contains-value: 'reverify'
1227           projects:
1228             - project-compare-type: 'ANT'
1229               project-pattern: 'functest'
1230               branches:
1231                 - branch-compare-type: 'ANT'
1232                   branch-pattern: '**/{branch}'
1233           skip-vote:
1234             successful: false
1235             failed: false
1236             unstable: false
1237             notbuilt: false
1238
1239 - job-template:
1240     name: 'functest-{tag}-gate'
1241     project-type: multijob
1242     triggers:
1243       - functest-patchset-created:
1244           branch: '{branch}'
1245     parameters:
1246       - functest-slave:
1247           slave: '{slave}'
1248       - functest-build_tag:
1249           build_tag: ''
1250       - functest-DEBUG:
1251           DEBUG: 'true'
1252       - functest-EXTERNAL_NETWORK:
1253           EXTERNAL_NETWORK: public
1254       - functest-VOLUME_DEVICE_NAME:
1255           VOLUME_DEVICE_NAME: sdb
1256       - functest-IMAGE_PROPERTIES:
1257           IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
1258     properties:
1259       - build-blocker:
1260           use-build-blocker: true
1261           blocking-level: 'NODE'
1262           blocking-jobs:
1263             - '^functest(-pi)?(-ovn)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
1264     builders:
1265       - multijob:
1266           name: remove former images
1267           projects:
1268             - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
1269               <<: *functest-jobs
1270             - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
1271               <<: *functest-jobs
1272             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rmi'
1273               <<: *functest-jobs
1274             - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
1275               <<: *functest-jobs
1276             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rmi'
1277               <<: *functest-jobs
1278             - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
1279               <<: *functest-jobs
1280       - multijob:
1281           name: remove dependencies
1282           projects:
1283             - name: 'functest-_-alpine-3.12-rmi'
1284               <<: *functest-jobs
1285       - multijob:
1286           name: pull dependencies
1287           projects:
1288             - name: 'functest-_-alpine-3.12-pull'
1289               <<: *functest-jobs
1290       - multijob:
1291           name: build opnfv/functest-core
1292           projects:
1293             - name: 'functest-opnfv-functest-core-{tag}-gate'
1294               <<: *functest-jobs
1295       - multijob:
1296           name: build opnfv/functest-tempest
1297           projects:
1298             - name: 'functest-opnfv-functest-tempest-{tag}-gate'
1299               <<: *functest-jobs
1300       - multijob:
1301           name: build containers
1302           projects:
1303             - name: 'functest-opnfv-functest-healthcheck-{tag}-gate'
1304               <<: *functest-jobs
1305             - name: 'functest-opnfv-functest-smoke-{tag}-gate'
1306               <<: *functest-jobs
1307             - name: 'functest-opnfv-functest-benchmarking-{tag}-gate'
1308               <<: *functest-jobs
1309             - name: 'functest-opnfv-functest-vnf-{tag}-gate'
1310               <<: *functest-jobs
1311       - multijob:
1312           name: build cntt containers
1313           projects:
1314             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-gate'
1315               <<: *functest-jobs
1316             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-gate'
1317               <<: *functest-jobs
1318       - multijob:
1319           name: opnfv/functest-healthcheck:{tag}
1320           projects:
1321             - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
1322               <<: *functest-jobs
1323             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
1324               <<: *functest-jobs
1325             - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
1326               <<: *functest-jobs
1327             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
1328               <<: *functest-jobs
1329             - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
1330               <<: *functest-jobs
1331             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
1332               <<: *functest-jobs
1333             - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
1334               <<: *functest-jobs
1335             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
1336               <<: *functest-jobs
1337             - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
1338               <<: *functest-jobs
1339             - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
1340               <<: *functest-jobs
1341             - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
1342               <<: *functest-jobs
1343             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
1344               <<: *functest-jobs
1345             - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
1346               <<: *functest-jobs
1347       - multijob:
1348           name: opnfv/functest-smoke:{tag}
1349           projects:
1350             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_neutron-run'
1351               <<: *functest-jobs
1352             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
1353               <<: *functest-jobs
1354             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
1355               <<: *functest-jobs
1356             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_heat-run'
1357               <<: *functest-jobs
1358             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_telemetry-run'
1359               <<: *functest-jobs
1360             - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
1361               <<: *functest-jobs
1362             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
1363               <<: *functest-jobs
1364             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
1365               <<: *functest-jobs
1366             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
1367               <<: *functest-jobs
1368             - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
1369               <<: *functest-jobs
1370             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
1371               <<: *functest-jobs
1372             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
1373               <<: *functest-jobs
1374             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
1375               <<: *functest-jobs
1376             - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
1377               <<: *functest-jobs
1378             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_admin-run'
1379               <<: *functest-jobs
1380             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_member-run'
1381               <<: *functest-jobs
1382             - name: 'functest-opnfv-functest-smoke-{tag}-patrole_reader-run'
1383               <<: *functest-jobs
1384             - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
1385               <<: *functest-jobs
1386             - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
1387               <<: *functest-jobs
1388             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_barbican-run'
1389               <<: *functest-jobs
1390             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_octavia-run'
1391               <<: *functest-jobs
1392             - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cyborg-run'
1393               <<: *functest-jobs
1394       - multijob:
1395           name: opnfv/functest-smoke-cntt:{tag}
1396           projects:
1397             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
1398               <<: *functest-jobs
1399             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
1400               <<: *functest-jobs
1401             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
1402               <<: *functest-jobs
1403             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
1404               <<: *functest-jobs
1405             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
1406               <<: *functest-jobs
1407             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
1408               <<: *functest-jobs
1409             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
1410               <<: *functest-jobs
1411             - name: 'functest-opnfv-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
1412               <<: *functest-jobs
1413       - multijob:
1414           name: opnfv/functest-benchmarking:{tag}
1415           projects:
1416             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
1417               <<: *functest-jobs
1418             - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
1419               <<: *functest-jobs
1420             - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
1421               <<: *functest-jobs
1422             - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
1423               <<: *functest-jobs
1424       - multijob:
1425           name: opnfv/functest-benchmarking-cntt:{tag}
1426           projects:
1427             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
1428               <<: *functest-jobs
1429             - name: 'functest-opnfv-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
1430               <<: *functest-jobs
1431       - multijob:
1432           name: opnfv/functest-vnf:{tag}
1433           projects:
1434             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
1435               <<: *functest-jobs
1436             - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
1437               <<: *functest-jobs
1438             - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
1439               <<: *functest-jobs
1440             - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
1441               <<: *functest-jobs
1442             - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
1443               <<: *functest-jobs
1444
1445 - project:
1446     name: 'functest'
1447     <<: *functest-params
1448     jobs:
1449       - 'functest-{tag}-daily'
1450
1451 - project:
1452     name: 'functest-gate'
1453     <<: *functest-params
1454     exclude:
1455       - tag: arm64-latest
1456       - tag: arm64-kali
1457       - tag: arm64-jerma
1458       - tag: arm64-iruya
1459       - tag: arm64-hunter
1460     jobs:
1461       - 'functest-{tag}-check'
1462       - 'functest-{tag}-gate'
1463
1464 - view:
1465     name: functest
1466     view-type: list
1467     columns:
1468       - status
1469       - weather
1470       - job
1471       - last-success
1472       - last-failure
1473       - last-duration
1474     regex: ^functest(-ovn)?-(arm.*-|amd64-)*[a-z]+-daily$
1475
1476 - view:
1477     name: functest-gate
1478     view-type: list
1479     columns:
1480       - status
1481       - weather
1482       - job
1483       - last-success
1484       - last-failure
1485       - last-duration
1486     regex: ^functest(-ovn)?-(arm.*-|amd64-)*[a-z]+-gate$