Set DEPLOY_SCENARIO=os-ovn-nofeature-noha in Functest ovn jjbs
[releng.git] / jjb / functest / functest.ovn.yaml
1 ---
2 - functest-ovn-jobs: &functest-ovn-jobs
3     name: 'functest-ovn-jobs'
4     current-parameters: true
5
6 - functest-ovn-params: &functest-ovn-params
7     name: 'functest-ovn-params'
8     repo: 'opnfv'
9     port:
10     tag:
11       - jerma:
12           branch: stable/jerma
13           slave: lf-pod4-2
14           dashboard_url: http://172.30.12.85
15
16 - parameter:
17     name: functest-ovn-slave
18     parameters:
19       - label:
20           name: slave
21           default: '{slave}'
22
23 - parameter:
24     name: functest-ovn-build_tag
25     parameters:
26       - random-string:
27           name: build_tag
28
29 - parameter:
30     name: functest-ovn-branch
31     parameters:
32       - string:
33           name: branch
34           default: '{branch}'
35
36 - parameter:
37     name: functest-ovn-DEBUG
38     parameters:
39       - string:
40           name: DEBUG
41           default: 'true'
42
43 - parameter:
44     name: functest-ovn-EXTERNAL_NETWORK
45     parameters:
46       - string:
47           name: EXTERNAL_NETWORK
48           default: public
49
50 - functest-ovn-containers: &functest-ovn-containers
51     name: 'functest-ovn-containers'
52     repo: '{repo}'
53     port: '{port}'
54     container: '{container}'
55     tag: '{tag}'
56
57 - functest-ovn-run-containers: &functest-ovn-run-containers
58     name: 'functest-ovn-run-containers'
59     <<: *functest-ovn-containers
60     test: '{test}'
61     dashboard_url: '{dashboard_url}'
62
63 - functest-ovn-build-containers: &functest-ovn-build-containers
64     name: 'functest-ovn-build-containers'
65     <<: *functest-ovn-containers
66     ref_arg: '{ref_arg}'
67     path: '{path}'
68
69 - builder:
70     name: functest-ovn-pull-containers
71     builders:
72       - shell: |
73           set +x
74           if [ "{repo}" = "_" ]; then
75             image={container}:{tag}
76           elif [ "{port}" = "None" ]; then
77             image={repo}/{container}:{tag}
78           else
79             image={repo}:{port}/{container}:{tag}
80           fi
81           sudo docker pull $image
82
83 - builder:
84     name: functest-ovn-build-containers
85     builders:
86       - shell: |
87           set +x
88           if [ "{repo}" = "_" ]; then
89             image={container}:{tag}
90           elif [ "{port}" = "None" ]; then
91             image={repo}/{container}:{tag}
92           else
93             image={repo}:{port}/{container}:{tag}
94           fi
95           if [ "{ref_arg}" = "None" ]; then
96             build_arg=""
97           else
98             build_arg="--build-arg {ref_arg}={ref}"
99           fi
100           cd {path}
101           sudo docker build $build_arg \
102             --pull=false --no-cache --force-rm=true \
103             -t $image .
104
105 - builder:
106     name: functest-ovn-run-containers
107     builders:
108       - shell: |
109           set +x
110           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
111           if [ "{repo}" = "_" ]; then
112             image={container}:{tag}
113           elif [ "{port}" = "None" ]; then
114             image={repo}/{container}:{tag}
115           else
116             image={repo}:{port}/{container}:{tag}
117           fi
118           if [ "{tag}" = "latest" ]; then
119             py=3.8
120           elif [ "{tag}" = "jerma" ]; then
121             py=3.7
122           elif [ "{tag}" = "iruya" ]; then
123             py=3.6
124           else
125             py=2.7
126           fi
127           sudo docker run --rm \
128             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
129             -e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
130             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
131             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
132             -e NODE_NAME=$slave \
133             -e BUILD_TAG=$BUILD_TAG \
134             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
135             -e DEBUG=$DEBUG \
136             -e DEPLOY_SCENARIO=os-ovn-nofeature-noha \
137             -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
138             -e DASHBOARD_URL={dashboard_url} \
139             -e VOLUME_DEVICE_NAME=sdb \
140             -e IMAGE_PROPERTIES=hw_scsi_model:virtio-scsi,hw_disk_bus:scsi \
141             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
142             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
143             -v /home/opnfv/functest/tempest_blacklist.yaml:/usr/lib/python$py/\
144           site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/\
145           blacklist.yaml \
146             -v /home/opnfv/functest/tempest_conf.yaml:/usr/lib/python$py/\
147           site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/\
148           tempest_conf.yaml \
149             -v /home/opnfv/functest/.boto:/root/.boto \
150             $image run_tests -t {test} -r -p
151
152 - builder:
153     name: functest-ovn-remove-images
154     builders:
155       - shell: |
156           set +x
157           if [ "{repo}" = "_" ]; then
158             image={container}:{tag}
159           elif [ "{port}" = "None" ]; then
160             image={repo}/{container}:{tag}
161           else
162             image={repo}:{port}/{container}:{tag}
163           fi
164           sudo docker rmi $image || true
165
166 - scm:
167     name: functest-ovn-scm
168     scm:
169       - git:
170           url: https://gerrit.opnfv.org/gerrit/functest
171           refspec: '+refs/changes/*:refs/changes/*'
172           branches:
173             - '{ref}'
174
175 - job-template:
176     name: 'functest-ovn-{repo}-{container}-{tag}-pull'
177     parameters:
178       - functest-ovn-slave:
179           slave: '{slave}'
180     builders:
181       - functest-ovn-pull-containers:
182           <<: *functest-ovn-containers
183
184 - project:
185     name: 'functest-ovn-opnfv-functest-healthcheck-pull'
186     <<: *functest-ovn-params
187     container: 'functest-healthcheck'
188     jobs:
189       - 'functest-ovn-{repo}-{container}-{tag}-pull'
190
191 - project:
192     name: 'functest-ovn-opnfv-functest-smoke-pull'
193     <<: *functest-ovn-params
194     container: 'functest-smoke'
195     jobs:
196       - 'functest-ovn-{repo}-{container}-{tag}-pull'
197
198 - project:
199     name: 'functest-ovn-opnfv-functest-smoke-cntt-pull'
200     <<: *functest-ovn-params
201     container: 'functest-smoke-cntt'
202     jobs:
203       - 'functest-ovn-{repo}-{container}-{tag}-pull'
204
205 - project:
206     name: 'functest-ovn-opnfv-functest-benchmarking-pull'
207     <<: *functest-ovn-params
208     container: 'functest-benchmarking'
209     jobs:
210       - 'functest-ovn-{repo}-{container}-{tag}-pull'
211
212 - project:
213     name: 'functest-ovn-opnfv-functest-vnf-pull'
214     <<: *functest-ovn-params
215     container: 'functest-vnf'
216     jobs:
217       - 'functest-ovn-{repo}-{container}-{tag}-pull'
218
219 - job-template:
220     name: 'functest-ovn-{repo}-{container}-{tag}-rmi'
221     parameters:
222       - functest-ovn-slave:
223           slave: '{slave}'
224     builders:
225       - functest-ovn-remove-images:
226           <<: *functest-ovn-containers
227
228 - project:
229     name: 'functest-ovn-opnfv-functest-healthcheck-rmi'
230     <<: *functest-ovn-params
231     container: 'functest-healthcheck'
232     jobs:
233       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
234
235 - project:
236     name: 'functest-ovn-opnfv-functest-smoke-rmi'
237     <<: *functest-ovn-params
238     container: 'functest-smoke'
239     jobs:
240       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
241
242 - project:
243     name: 'functest-ovn-opnfv-functest-smoke-cntt-rmi'
244     <<: *functest-ovn-params
245     container: 'functest-smoke-cntt'
246     jobs:
247       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
248
249 - project:
250     name: 'functest-ovn-opnfv-functest-benchmarking-rmi'
251     <<: *functest-ovn-params
252     container: 'functest-benchmarking'
253     jobs:
254       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
255
256 - project:
257     name: 'functest-ovn-opnfv-functest-vnf-rmi'
258     <<: *functest-ovn-params
259     container: 'functest-vnf'
260     jobs:
261       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
262
263 - job-template:
264     name: 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
265     parameters:
266       - functest-ovn-slave:
267           slave: '{slave}'
268       - functest-ovn-build_tag:
269           build_tag: ''
270       - functest-ovn-DEBUG:
271           DEBUG: 'true'
272       - functest-ovn-EXTERNAL_NETWORK:
273           EXTERNAL_NETWORK: public
274     builders:
275       - functest-ovn-run-containers:
276           <<: *functest-ovn-run-containers
277
278 - project:
279     name: 'functest-ovn-opnfv-functest-healthcheck'
280     <<: *functest-ovn-params
281     container: 'functest-healthcheck'
282     test:
283       - connection_check
284       - tenantnetwork1
285       - tenantnetwork2
286       - vmready1
287       - vmready2
288       - singlevm1
289       - singlevm2
290       - vping_ssh
291       - vping_userdata
292       - cinder_test
293       - odl
294       - tempest_smoke
295       - tempest_horizon
296     exclude:
297       - tag: hunter
298         test: tempest_horizon
299     jobs:
300       - 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
301
302 - project:
303     name: 'functest-ovn-opnfv-functest-smoke'
304     <<: *functest-ovn-params
305     container: 'functest-smoke'
306     test:
307       - neutron-tempest-plugin-api
308       - tempest_cinder
309       - tempest_keystone
310       - rally_sanity
311       - refstack_defcore
312       - refstack_compute
313       - refstack_object
314       - refstack_platform
315       - tempest_full
316       - tempest_scenario
317       - tempest_slow
318       - patrole
319       - neutron_trunk
320       - networking-bgpvpn
321       - networking-sfc
322       - barbican
323       - octavia
324     exclude:
325       - tag: latest
326         test: refstack_defcore
327       - tag: jerma
328         test: refstack_defcore
329       - tag: iruya
330         test: refstack_defcore
331       - tag: iruya
332         test: octavia
333       - tag: hunter
334         test: refstack_compute
335       - tag: hunter
336         test: refstack_object
337       - tag: hunter
338         test: refstack_platform
339       - tag: hunter
340         test: octavia
341     jobs:
342       - 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
343
344 - project:
345     name: 'functest-ovn-opnfv-functest-smoke-cntt'
346     <<: *functest-ovn-params
347     container: 'functest-smoke-cntt'
348     test:
349       - neutron-tempest-plugin-api
350       - tempest_cinder
351       - tempest_keystone
352       - rally_sanity
353       - tempest_full
354       - tempest_scenario
355       - tempest_slow
356     jobs:
357       - 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
358
359 - project:
360     name: 'functest-ovn-opnfv-functest-benchmarking'
361     <<: *functest-ovn-params
362     container: 'functest-benchmarking'
363     test:
364       - rally_full
365       - rally_jobs
366       - vmtp
367       - shaker
368     jobs:
369       - 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
370
371 - project:
372     name: 'functest-ovn-opnfv-functest-vnf'
373     <<: *functest-ovn-params
374     container: 'functest-vnf'
375     test:
376       - cloudify
377       - cloudify_ims
378       - heat_ims
379       - vyos_vrouter
380       - juju_epc
381     jobs:
382       - 'functest-ovn-{repo}-{container}-{tag}-{test}-run'
383
384 - builder:
385     name: functest-ovn-zip
386     builders:
387       - shell: |
388           set +x
389           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/* || true
390           if [ "{repo}" = "_" ]; then
391             image={container}:{tag}
392           elif [ "{port}" = "None" ]; then
393             image={repo}/{container}:{tag}
394           else
395             image={repo}:{port}/{container}:{tag}
396           fi
397           sudo docker run --rm \
398             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
399             -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
400             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
401             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
402             -e BUILD_TAG=$BUILD_TAG \
403             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
404             -v /home/opnfv/functest/.boto:/root/.boto \
405             $image zip_campaign
406
407 - job-template:
408     name: 'functest-ovn-{tag}-zip'
409     parameters:
410       - functest-ovn-build_tag:
411           build_tag: ''
412     builders:
413       - functest-ovn-zip:
414           <<: *functest-ovn-containers
415
416 - project:
417     name: 'functest-ovn-{tag}-zip'
418     <<: *functest-ovn-params
419     container: 'functest-healthcheck'
420     jobs:
421       - 'functest-ovn-{tag}-zip'
422
423 - job-template:
424     name: 'functest-ovn-{tag}-daily'
425     project-type: multijob
426     triggers:
427       - timed: '@daily'
428     parameters:
429       - functest-ovn-slave:
430           slave: '{slave}'
431       - functest-ovn-build_tag:
432           build_tag: ''
433       - functest-ovn-DEBUG:
434           DEBUG: 'true'
435       - functest-ovn-EXTERNAL_NETWORK:
436           EXTERNAL_NETWORK: public
437     properties:
438       - build-blocker:
439           use-build-blocker: true
440           blocking-level: 'NODE'
441           blocking-jobs:
442             - '^functest-ovn-{tag}-(daily|check|gate)$'
443     builders:
444       - multijob:
445           name: remove former images
446           projects:
447             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-rmi'
448               <<: *functest-ovn-jobs
449             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rmi'
450               <<: *functest-ovn-jobs
451             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rmi'
452               <<: *functest-ovn-jobs
453             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rmi'
454               <<: *functest-ovn-jobs
455             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-rmi'
456               <<: *functest-ovn-jobs
457       - multijob:
458           name: pull containers
459           projects:
460             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-pull'
461               <<: *functest-ovn-jobs
462             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-pull'
463               <<: *functest-ovn-jobs
464             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-pull'
465               <<: *functest-ovn-jobs
466             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-pull'
467               <<: *functest-ovn-jobs
468             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-pull'
469               <<: *functest-ovn-jobs
470       - multijob:
471           name: opnfv/functest-healthcheck:{tag}
472           projects:
473             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-connection_check-run'
474               <<: *functest-ovn-jobs
475             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
476               <<: *functest-ovn-jobs
477             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
478               <<: *functest-ovn-jobs
479             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready1-run'
480               <<: *functest-ovn-jobs
481             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready2-run'
482               <<: *functest-ovn-jobs
483             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm1-run'
484               <<: *functest-ovn-jobs
485             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm2-run'
486               <<: *functest-ovn-jobs
487             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
488               <<: *functest-ovn-jobs
489             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
490               <<: *functest-ovn-jobs
491             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-cinder_test-run'
492               <<: *functest-ovn-jobs
493             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-odl-run'
494               <<: *functest-ovn-jobs
495             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
496               <<: *functest-ovn-jobs
497             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
498               <<: *functest-ovn-jobs
499       - multijob:
500           name: opnfv/functest-smoke:{tag}
501           projects:
502             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
503               <<: *functest-ovn-jobs
504             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_cinder-run'
505               <<: *functest-ovn-jobs
506             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_keystone-run'
507               <<: *functest-ovn-jobs
508             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rally_sanity-run'
509               <<: *functest-ovn-jobs
510             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_defcore-run'
511               <<: *functest-ovn-jobs
512             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_compute-run'
513               <<: *functest-ovn-jobs
514             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_object-run'
515               <<: *functest-ovn-jobs
516             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_platform-run'
517               <<: *functest-ovn-jobs
518             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_full-run'
519               <<: *functest-ovn-jobs
520             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_scenario-run'
521               <<: *functest-ovn-jobs
522             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_slow-run'
523               <<: *functest-ovn-jobs
524             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-patrole-run'
525               <<: *functest-ovn-jobs
526             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron_trunk-run'
527               <<: *functest-ovn-jobs
528             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
529               <<: *functest-ovn-jobs
530             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-sfc-run'
531               <<: *functest-ovn-jobs
532             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-barbican-run'
533               <<: *functest-ovn-jobs
534             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-octavia-run'
535               <<: *functest-ovn-jobs
536       - multijob:
537           name: opnfv/functest-smoke-cntt:{tag}
538           projects:
539             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-neutron-tempest-plugin-api-run'
540               <<: *functest-ovn-jobs
541             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_cinder-run'
542               <<: *functest-ovn-jobs
543             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_keystone-run'
544               <<: *functest-ovn-jobs
545             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rally_sanity-run'
546               <<: *functest-ovn-jobs
547             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_full-run'
548               <<: *functest-ovn-jobs
549             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_scenario-run'
550               <<: *functest-ovn-jobs
551             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_slow-run'
552               <<: *functest-ovn-jobs
553       - multijob:
554           name: opnfv/functest-benchmarking:{tag}
555           projects:
556             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_full-run'
557               <<: *functest-ovn-jobs
558             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
559               <<: *functest-ovn-jobs
560             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-vmtp-run'
561               <<: *functest-ovn-jobs
562             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-shaker-run'
563               <<: *functest-ovn-jobs
564       - multijob:
565           name: opnfv/functest-vnf:{tag}
566           execution-type: SEQUENTIALLY
567           projects:
568             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify-run'
569               <<: *functest-ovn-jobs
570             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify_ims-run'
571               <<: *functest-ovn-jobs
572             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-heat_ims-run'
573               <<: *functest-ovn-jobs
574             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
575               <<: *functest-ovn-jobs
576             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-juju_epc-run'
577               <<: *functest-ovn-jobs
578       - multijob:
579           name: dump all campaign data
580           projects:
581             - name: 'functest-ovn-{tag}-zip'
582               <<: *functest-ovn-jobs
583
584 - job-template:
585     name: 'functest-ovn-{repo}-{container}-{tag}-gate'
586     parameters:
587       - functest-ovn-slave:
588           slave: '{slave}'
589     scm:
590       - functest-ovn-scm:
591           ref: $GERRIT_REFSPEC
592     builders:
593       - functest-ovn-build-containers:
594           <<: *functest-ovn-build-containers
595           ref: $GERRIT_REFSPEC
596
597 - job-template:
598     name: 'functest-ovn-{repo}-{container}-{tag}-check'
599     parameters:
600       - functest-ovn-slave:
601           slave: '{slave}'
602       - functest-ovn-branch:
603           branch: '{branch}'
604     scm:
605       - functest-ovn-scm:
606           ref: $branch
607     builders:
608       - functest-ovn-build-containers:
609           <<: *functest-ovn-build-containers
610           ref: $branch
611
612 - project:
613     name: 'functest-ovn-_-alpine-3.11-rmi'
614     repo: _
615     port:
616     container: alpine
617     tag: '3.11'
618     slave: master
619     jobs:
620       - 'functest-ovn-{repo}-{container}-{tag}-rmi'
621
622 - project:
623     name: 'functest-ovn-_-alpine-3.11-pull'
624     repo: _
625     port:
626     container: alpine
627     tag: '3.11'
628     slave: master
629     jobs:
630       - 'functest-ovn-{repo}-{container}-{tag}-pull'
631
632 - project:
633     name: functest-ovn-opnfv-functest-ovn-core-{tag}-build
634     <<: *functest-ovn-params
635     container: functest-ovn-core
636     ref_arg: BRANCH
637     path: docker/core
638     jobs:
639       - 'functest-ovn-{repo}-{container}-{tag}-gate'
640       - 'functest-ovn-{repo}-{container}-{tag}-check'
641
642 - project:
643     name: functest-ovn-opnfv-functest-ovn-tempest-{tag}-build
644     <<: *functest-ovn-params
645     container: functest-ovn-tempest
646     ref_arg: BRANCH
647     path: docker/tempest
648     jobs:
649       - 'functest-ovn-{repo}-{container}-{tag}-gate'
650       - 'functest-ovn-{repo}-{container}-{tag}-check'
651     exclude:
652       - tag: latest
653       - tag: jerma
654
655 - project:
656     name: functest-ovn-opnfv-functest-healthcheck-{tag}-build
657     <<: *functest-ovn-params
658     container: functest-healthcheck
659     ref_arg: BRANCH
660     path: docker/healthcheck
661     jobs:
662       - 'functest-ovn-{repo}-{container}-{tag}-gate'
663       - 'functest-ovn-{repo}-{container}-{tag}-check'
664
665 - project:
666     name: functest-ovn-opnfv-functest-smoke-{tag}-build
667     <<: *functest-ovn-params
668     container: functest-smoke
669     ref_arg: BRANCH
670     path: docker/smoke
671     jobs:
672       - 'functest-ovn-{repo}-{container}-{tag}-gate'
673       - 'functest-ovn-{repo}-{container}-{tag}-check'
674
675 - project:
676     name: functest-ovn-opnfv-functest-benchmarking-{tag}-build
677     <<: *functest-ovn-params
678     container: functest-benchmarking
679     ref_arg: BRANCH
680     path: docker/benchmarking
681     jobs:
682       - 'functest-ovn-{repo}-{container}-{tag}-gate'
683       - 'functest-ovn-{repo}-{container}-{tag}-check'
684
685 - project:
686     name: functest-ovn-opnfv-functest-vnf-{tag}-build
687     <<: *functest-ovn-params
688     container: functest-vnf
689     ref_arg:
690     path: docker/vnf
691     jobs:
692       - 'functest-ovn-{repo}-{container}-{tag}-gate'
693       - 'functest-ovn-{repo}-{container}-{tag}-check'
694
695 - project:
696     name: functest-ovn-opnfv-functest-smoke-cntt-{tag}-build
697     <<: *functest-ovn-params
698     container: functest-smoke-cntt
699     ref_arg: BRANCH
700     path: docker/smoke-cntt
701     jobs:
702       - 'functest-ovn-{repo}-{container}-{tag}-gate'
703       - 'functest-ovn-{repo}-{container}-{tag}-check'
704
705 - job-template:
706     name: 'functest-ovn-{tag}-check'
707     project-type: multijob
708     parameters:
709       - functest-ovn-slave:
710           slave: '{slave}'
711       - functest-ovn-build_tag:
712           build_tag: ''
713       - functest-ovn-branch:
714           branch: '{branch}'
715       - functest-ovn-DEBUG:
716           DEBUG: 'true'
717       - functest-ovn-EXTERNAL_NETWORK:
718           EXTERNAL_NETWORK: public
719     properties:
720       - build-blocker:
721           use-build-blocker: true
722           blocking-level: 'NODE'
723           blocking-jobs:
724             - '^functest-ovn-{tag}-(daily|check|gate)$'
725     builders:
726       - multijob:
727           name: remove former images
728           projects:
729             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-rmi'
730               <<: *functest-ovn-jobs
731             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rmi'
732               <<: *functest-ovn-jobs
733             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rmi'
734               <<: *functest-ovn-jobs
735             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rmi'
736               <<: *functest-ovn-jobs
737             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-rmi'
738               <<: *functest-ovn-jobs
739       - multijob:
740           name: remove dependencies
741           projects:
742             - name: 'functest-ovn-_-alpine-3.11-rmi'
743               <<: *functest-ovn-jobs
744       - multijob:
745           name: pull dependencies
746           projects:
747             - name: 'functest-ovn-_-alpine-3.11-pull'
748               <<: *functest-ovn-jobs
749       - multijob:
750           name: build opnfv/functest-ovn-core
751           projects:
752             - name: 'functest-ovn-opnfv-functest-ovn-core-{tag}-check'
753               <<: *functest-ovn-jobs
754       - multijob:
755           name: build opnfv/functest-ovn-tempest
756           projects:
757             - name: 'functest-ovn-opnfv-functest-ovn-tempest-{tag}-check'
758               <<: *functest-ovn-jobs
759       - multijob:
760           name: build containers
761           projects:
762             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-check'
763               <<: *functest-ovn-jobs
764             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-check'
765               <<: *functest-ovn-jobs
766             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-check'
767               <<: *functest-ovn-jobs
768             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-check'
769               <<: *functest-ovn-jobs
770       - multijob:
771           name: build opnfv/functest-smoke-cntt
772           projects:
773             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-check'
774               <<: *functest-ovn-jobs
775       - multijob:
776           name: opnfv/functest-healthcheck:{tag}
777           projects:
778             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-connection_check-run'
779               <<: *functest-ovn-jobs
780             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
781               <<: *functest-ovn-jobs
782             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
783               <<: *functest-ovn-jobs
784             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready1-run'
785               <<: *functest-ovn-jobs
786             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready2-run'
787               <<: *functest-ovn-jobs
788             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm1-run'
789               <<: *functest-ovn-jobs
790             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm2-run'
791               <<: *functest-ovn-jobs
792             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
793               <<: *functest-ovn-jobs
794             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
795               <<: *functest-ovn-jobs
796             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-cinder_test-run'
797               <<: *functest-ovn-jobs
798             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-odl-run'
799               <<: *functest-ovn-jobs
800             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
801               <<: *functest-ovn-jobs
802             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
803               <<: *functest-ovn-jobs
804       - multijob:
805           name: opnfv/functest-smoke:{tag}
806           projects:
807             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
808               <<: *functest-ovn-jobs
809             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_cinder-run'
810               <<: *functest-ovn-jobs
811             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_keystone-run'
812               <<: *functest-ovn-jobs
813             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rally_sanity-run'
814               <<: *functest-ovn-jobs
815             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_defcore-run'
816               <<: *functest-ovn-jobs
817             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_compute-run'
818               <<: *functest-ovn-jobs
819             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_object-run'
820               <<: *functest-ovn-jobs
821             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_platform-run'
822               <<: *functest-ovn-jobs
823             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_full-run'
824               <<: *functest-ovn-jobs
825             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_scenario-run'
826               <<: *functest-ovn-jobs
827             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_slow-run'
828               <<: *functest-ovn-jobs
829             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-patrole-run'
830               <<: *functest-ovn-jobs
831             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron_trunk-run'
832               <<: *functest-ovn-jobs
833             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
834               <<: *functest-ovn-jobs
835             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-sfc-run'
836               <<: *functest-ovn-jobs
837             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-barbican-run'
838               <<: *functest-ovn-jobs
839             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-octavia-run'
840               <<: *functest-ovn-jobs
841       - multijob:
842           name: opnfv/functest-smoke-cntt:{tag}
843           projects:
844             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-neutron-tempest-plugin-api-run'
845               <<: *functest-ovn-jobs
846             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_cinder-run'
847               <<: *functest-ovn-jobs
848             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_keystone-run'
849               <<: *functest-ovn-jobs
850             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rally_sanity-run'
851               <<: *functest-ovn-jobs
852             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_full-run'
853               <<: *functest-ovn-jobs
854             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_scenario-run'
855               <<: *functest-ovn-jobs
856             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_slow-run'
857               <<: *functest-ovn-jobs
858       - multijob:
859           name: opnfv/functest-benchmarking:{tag}
860           projects:
861             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_full-run'
862               <<: *functest-ovn-jobs
863             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
864               <<: *functest-ovn-jobs
865             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-vmtp-run'
866               <<: *functest-ovn-jobs
867             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-shaker-run'
868               <<: *functest-ovn-jobs
869       - multijob:
870           name: opnfv/functest-vnf:{tag}
871           execution-type: SEQUENTIALLY
872           projects:
873             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify-run'
874               <<: *functest-ovn-jobs
875             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify_ims-run'
876               <<: *functest-ovn-jobs
877             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-heat_ims-run'
878               <<: *functest-ovn-jobs
879             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
880               <<: *functest-ovn-jobs
881             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-juju_epc-run'
882               <<: *functest-ovn-jobs
883
884 - trigger:
885     name: functest-ovn-patchset-created
886     triggers:
887       - gerrit:
888           server-name: 'gerrit.opnfv.org'
889           trigger-on:
890             - patchset-created-event
891             - comment-added-contains-event:
892                 comment-contains-value: 'recheck'
893             - comment-added-contains-event:
894                 comment-contains-value: 'reverify'
895           projects:
896             - project-compare-type: 'ANT'
897               project-pattern: 'functest'
898               branches:
899                 - branch-compare-type: 'ANT'
900                   branch-pattern: '**/{branch}'
901           skip-vote:
902             successful: false
903             failed: false
904             unstable: false
905             notbuilt: false
906
907 - job-template:
908     name: 'functest-ovn-{tag}-gate'
909     project-type: multijob
910     triggers:
911       - functest-ovn-patchset-created:
912           branch: '{branch}'
913     parameters:
914       - functest-ovn-slave:
915           slave: '{slave}'
916       - functest-ovn-build_tag:
917           build_tag: ''
918       - functest-ovn-DEBUG:
919           DEBUG: 'true'
920       - functest-ovn-EXTERNAL_NETWORK:
921           EXTERNAL_NETWORK: public
922     properties:
923       - build-blocker:
924           use-build-blocker: true
925           blocking-level: 'NODE'
926           blocking-jobs:
927             - '^functest-ovn-{tag}-(daily|check|gate)$'
928     builders:
929       - multijob:
930           name: remove former images
931           projects:
932             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-rmi'
933               <<: *functest-ovn-jobs
934             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rmi'
935               <<: *functest-ovn-jobs
936             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rmi'
937               <<: *functest-ovn-jobs
938             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rmi'
939               <<: *functest-ovn-jobs
940             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-rmi'
941               <<: *functest-ovn-jobs
942       - multijob:
943           name: remove dependencies
944           projects:
945             - name: 'functest-ovn-_-alpine-3.11-rmi'
946               <<: *functest-ovn-jobs
947       - multijob:
948           name: pull dependencies
949           projects:
950             - name: 'functest-ovn-_-alpine-3.11-pull'
951               <<: *functest-ovn-jobs
952       - multijob:
953           name: build opnfv/functest-ovn-core
954           projects:
955             - name: 'functest-ovn-opnfv-functest-ovn-core-{tag}-gate'
956               <<: *functest-ovn-jobs
957       - multijob:
958           name: build opnfv/functest-ovn-tempest
959           projects:
960             - name: 'functest-ovn-opnfv-functest-ovn-tempest-{tag}-gate'
961               <<: *functest-ovn-jobs
962       - multijob:
963           name: build containers
964           projects:
965             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-gate'
966               <<: *functest-ovn-jobs
967             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-gate'
968               <<: *functest-ovn-jobs
969             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-gate'
970               <<: *functest-ovn-jobs
971             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-gate'
972               <<: *functest-ovn-jobs
973       - multijob:
974           name: build opnfv/functest-smoke-cntt
975           projects:
976             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-gate'
977               <<: *functest-ovn-jobs
978       - multijob:
979           name: opnfv/functest-healthcheck:{tag}
980           projects:
981             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-connection_check-run'
982               <<: *functest-ovn-jobs
983             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
984               <<: *functest-ovn-jobs
985             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
986               <<: *functest-ovn-jobs
987             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready1-run'
988               <<: *functest-ovn-jobs
989             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vmready2-run'
990               <<: *functest-ovn-jobs
991             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm1-run'
992               <<: *functest-ovn-jobs
993             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-singlevm2-run'
994               <<: *functest-ovn-jobs
995             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
996               <<: *functest-ovn-jobs
997             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
998               <<: *functest-ovn-jobs
999             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-cinder_test-run'
1000               <<: *functest-ovn-jobs
1001             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-odl-run'
1002               <<: *functest-ovn-jobs
1003             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
1004               <<: *functest-ovn-jobs
1005             - name: 'functest-ovn-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
1006               <<: *functest-ovn-jobs
1007       - multijob:
1008           name: opnfv/functest-smoke:{tag}
1009           projects:
1010             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
1011               <<: *functest-ovn-jobs
1012             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_cinder-run'
1013               <<: *functest-ovn-jobs
1014             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_keystone-run'
1015               <<: *functest-ovn-jobs
1016             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-rally_sanity-run'
1017               <<: *functest-ovn-jobs
1018             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_defcore-run'
1019               <<: *functest-ovn-jobs
1020             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_compute-run'
1021               <<: *functest-ovn-jobs
1022             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_object-run'
1023               <<: *functest-ovn-jobs
1024             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-refstack_platform-run'
1025               <<: *functest-ovn-jobs
1026             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_full-run'
1027               <<: *functest-ovn-jobs
1028             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_scenario-run'
1029               <<: *functest-ovn-jobs
1030             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-tempest_slow-run'
1031               <<: *functest-ovn-jobs
1032             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-patrole-run'
1033               <<: *functest-ovn-jobs
1034             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-neutron_trunk-run'
1035               <<: *functest-ovn-jobs
1036             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
1037               <<: *functest-ovn-jobs
1038             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-networking-sfc-run'
1039               <<: *functest-ovn-jobs
1040             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-barbican-run'
1041               <<: *functest-ovn-jobs
1042             - name: 'functest-ovn-opnfv-functest-smoke-{tag}-octavia-run'
1043               <<: *functest-ovn-jobs
1044       - multijob:
1045           name: opnfv/functest-smoke-cntt:{tag}
1046           projects:
1047             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-neutron-tempest-plugin-api-run'
1048               <<: *functest-ovn-jobs
1049             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_cinder-run'
1050               <<: *functest-ovn-jobs
1051             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_keystone-run'
1052               <<: *functest-ovn-jobs
1053             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-rally_sanity-run'
1054               <<: *functest-ovn-jobs
1055             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_full-run'
1056               <<: *functest-ovn-jobs
1057             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_scenario-run'
1058               <<: *functest-ovn-jobs
1059             - name: 'functest-ovn-opnfv-functest-smoke-cntt-{tag}-tempest_slow-run'
1060               <<: *functest-ovn-jobs
1061       - multijob:
1062           name: opnfv/functest-benchmarking:{tag}
1063           projects:
1064             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_full-run'
1065               <<: *functest-ovn-jobs
1066             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
1067               <<: *functest-ovn-jobs
1068             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-vmtp-run'
1069               <<: *functest-ovn-jobs
1070             - name: 'functest-ovn-opnfv-functest-benchmarking-{tag}-shaker-run'
1071               <<: *functest-ovn-jobs
1072       - multijob:
1073           name: opnfv/functest-vnf:{tag}
1074           execution-type: SEQUENTIALLY
1075           projects:
1076             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify-run'
1077               <<: *functest-ovn-jobs
1078             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-cloudify_ims-run'
1079               <<: *functest-ovn-jobs
1080             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-heat_ims-run'
1081               <<: *functest-ovn-jobs
1082             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
1083               <<: *functest-ovn-jobs
1084             - name: 'functest-ovn-opnfv-functest-vnf-{tag}-juju_epc-run'
1085               <<: *functest-ovn-jobs
1086
1087 - project:
1088     name: 'functest-ovn'
1089     <<: *functest-ovn-params
1090     jobs:
1091       - 'functest-ovn-{tag}-daily'
1092       - 'functest-ovn-{tag}-check'
1093       - 'functest-ovn-{tag}-gate'