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