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