Merge "Add controller Sonar scan to Sonarcloud"
[releng/builder.git] / jjb / integration / integration-templates.yaml
1 ---
2 # Job templates in this file (please update with every new template):
3 # FIXME: Update
4 #
5 # {project}-csit-1node-{functionality}-{install}-{stream}
6 # {project}-csit-3node-docker-{functionality}-{install}-{stream}
7 # {project}-csit-3node-{functionality}-{install}-{stream}
8 # {project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}
9 # {project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}
10 # {project}-csit-verify-1node-{functionality}
11 # {project}-csit-verify-3node-{functionality}
12 # {project}-patch-test-{feature}-{stream}
13 #
14 # Parameters:
15 # FIXME: Distinguish variables, macros and arguments, then update.
16 #
17 # opendaylight-infra-parameters: main project integration/test ($PROJECT)
18 # jre: (openjdk7 or openjdk8) Java runtime environment to use when launching ODL
19 # integration-distribution-branch: distribution branch ($DISTROBRANCH)
20 # integration-controller-bundle-url: distribution URL ($BUNDLE_URL)
21 # integration-controller-scope: only or all features ($CONTROLLERSCOPE)
22 # integration-controller-features: features under test ($CONTROLLER FEATURES)
23 # integration-test-options: robot options ($TESTOPTIONS)
24 # integration-stream-test-plan: stream specific robot test plan ($STREAMTESTPLAN)
25 # integration-test-plan: fallback robot test plan ($TESTPLAN)
26 # integration-patch-refspec: test branch ($PATCHREFSPEC)
27 # integration-use-features-boot: bool to toggle use of featuresBoot ($USEFEATURESBOOT)
28
29
30 ###########
31 # Anchors #
32 ###########
33
34 - inttest_csit_common: &inttest_csit_common
35     name: inttest-csit-common
36     # Defines common configuration to all CSIT jobs
37
38     #####################
39     # Default variables #
40     #####################
41
42     build-days-to-keep: 30
43     build-timeout: 360  # Time in minutes
44     disable-job: false
45
46     #####################
47     # Job configuration #
48     #####################
49
50     project-type: freestyle
51     node: centos7-robot-2c-8g
52     concurrent: true
53     disabled: '{disable-job}'
54
55     properties:
56       - opendaylight-infra-properties:
57           build-days-to-keep: '{build-days-to-keep}'
58
59     wrappers:
60       - opendaylight-infra-wrappers:
61           build-timeout: '{build-timeout}'
62
63 #################
64 # Job Templates #
65 #################
66
67 - job-template:
68     name: '{prefix}{project}-csit-verify-1node-{functionality}'
69     id: inttest-csit-verify-1node
70     <<: *inttest_csit_common
71
72     #####################
73     # Default variables #
74     #####################
75
76     openstack-cloud: vex
77     openstack-heat-template: csit-2-instance-type.yaml
78     openstack-heat-template-dir: openstack-hot
79
80     odl_system_flavor: 'odl-highcpu-4'
81     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
82     tools_system_count: 1
83     tools_system_flavor: 'odl-highcpu-2'
84     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
85
86     #####################
87     # Job configuration #
88     #####################
89
90     parameters:
91       - integration-csit-parameters:
92           archive-artifacts: '{archive-artifacts}'
93           branch: '{branch}'
94           os-cloud: '{os-cloud}'
95           # CSIT
96           bundle-url: '{bundle-url}'
97           repo-url: '{repo-url}'
98           robot-options: '{robot-options}'
99           # Controller
100           controller-scope: only
101           debug-map: '{debug-map}'
102           install-features: '{install-features}'
103           use-features-boot: 'True'
104           elasticsearch-attribute: '{elasticsearch-attribute}'
105       - integration-stack-2-type:
106           vm_0_count: 1
107           vm_0_flavor: '{odl_system_flavor}'
108           vm_0_image: '{odl_system_image}'
109           vm_1_count: '{tools_system_count}'
110           vm_1_flavor: '{tools_system_flavor}'
111           vm_1_image: '{tools_system_image}'
112       - integration-distribution-branch:
113           branch: '{verify-branch}'
114       - integration-distribution-stream:
115           stream: '{verify-stream}'
116       - integration-script-plan:
117           script-plan: '{project}.txt'
118       - integration-config-plan:
119           config-plan: '{project}.txt'
120       - integration-stream-test-plan:
121           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
122       - integration-test-plan:
123           test-plan: '{project}-{functionality}.txt'
124       - integration-jdk-version:
125           jdkversion: '{verify-jdkversion}'
126       - distribution-karaf-version:
127           karaf-version: '{verify-karaf-version}'
128
129     scm:
130       - integration-gerrit-scm:
131           basedir: 'test'
132           refspec: '$GERRIT_REFSPEC'
133           branch: 'master'
134
135     triggers:
136       - integration-trigger-patch-submitted:
137           gerrit-server-name: '{gerrit-server-name}'
138           project: 'integration/test'
139           branch: 'master'
140           files: 'csit/suites/{project}/**'
141
142     builders:
143       - lf-infra-pre-build
144       - integration-stack-2-type:
145           openstack-cloud: '{openstack-cloud}'
146           openstack-heat-template: '{openstack-heat-template}'
147           openstack-heat-template-dir: '{openstack-heat-template-dir}'
148       - integration-install-robotframework
149       - inject:
150           properties-file: 'env.properties'
151       - integration-get-slave-addresses
152       - inject:
153           properties-file: 'slave_addresses.txt'
154       - integration-detect-variables
155       - integration-install-common-functions
156       - integration-deploy-controller-run-test
157       - integration-cleanup-tmp
158
159     publishers:
160       - email-notification:
161           email-recipients: '{email-recipients}'
162           email-prefix: '[{project}]'
163       - integration-csit-publish:
164           robot_other_files: ''
165           robot-pass-threshold: 100.0
166           robot-unstable-threshold: 0.0
167       - lf-stack-delete:
168           openstack-cloud: '{openstack-cloud}'
169       - lf-infra-publish
170
171
172 ######################
173 # inttest-csit-1node #
174 ######################
175
176 - inttest_csit_1node: &inttest_csit_1node
177     name: inttest-csit-1node
178
179     #####################
180     # Default variables #
181     #####################
182
183     openstack-cloud: vex
184     openstack-heat-template: csit-2-instance-type.yaml
185     openstack-heat-template-dir: openstack-hot
186
187     odl_system_flavor: 'odl-highcpu-4'
188     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
189     tools_system_count: 1
190     tools_system_flavor: 'odl-highcpu-2'
191     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
192
193
194     #####################
195     # Job configuration #
196     #####################
197
198     parameters:
199       - integration-csit-parameters:
200           archive-artifacts: '{archive-artifacts}'
201           branch: '{branch}'
202           os-cloud: '{os-cloud}'
203           # CSIT
204           bundle-url: '{bundle-url}'
205           repo-url: '{repo-url}'
206           robot-options: '{robot-options}'
207           # Controller
208           controller-scope: '{scope}'
209           debug-map: '{debug-map}'
210           install-features: '{install-features}'
211           use-features-boot: 'True'
212           elasticsearch-attribute: '{elasticsearch-attribute}'
213       - integration-stack-2-type:
214           vm_0_count: 1
215           vm_0_flavor: '{odl_system_flavor}'
216           vm_0_image: '{odl_system_image}'
217           vm_1_count: '{tools_system_count}'
218           vm_1_flavor: '{tools_system_flavor}'
219           vm_1_image: '{tools_system_image}'
220       - integration-distribution-branch:
221           branch: '{branch}'
222       - integration-distribution-stream:
223           stream: '{stream}'
224       - integration-script-plan:
225           script-plan: '{project}.txt'
226       - integration-config-plan:
227           config-plan: '{project}.txt'
228       - integration-stream-test-plan:
229           stream-test-plan: '{project}-{functionality}-{stream}.txt'
230       - integration-test-plan:
231           test-plan: '{project}-{functionality}.txt'
232       - integration-test-suites:
233           test-suites: '{test-suites}'
234       - integration-patch-refspec:
235           branch: 'master'
236       - integration-jdk-version:
237           jdkversion: '{jre}'
238       - distribution-karaf-version:
239           karaf-version: '{karaf-version}'
240
241     scm:
242       - integration-gerrit-scm:
243           basedir: 'test'
244           refspec: '$PATCHREFSPEC'
245           branch: 'master'
246
247     triggers:
248       # we need this for not SR projects
249       - integration-csit-trigger:
250           jobs: '{trigger-jobs}'
251
252     builders:
253       - lf-infra-pre-build
254       - integration-stack-2-type:
255           openstack-cloud: '{openstack-cloud}'
256           openstack-heat-template: '{openstack-heat-template}'
257           openstack-heat-template-dir: '{openstack-heat-template-dir}'
258       - integration-install-robotframework
259       - inject:
260           properties-file: 'env.properties'
261       - integration-get-slave-addresses
262       - inject:
263           properties-file: 'slave_addresses.txt'
264       - integration-detect-variables
265       - integration-install-common-functions
266       - integration-deploy-controller-run-test
267       - integration-cleanup-tmp
268
269     publishers:
270       - email-notification:
271           email-recipients: '{email-recipients}'
272           email-prefix: '[{project}]'
273       - plot:
274           - title: '{01-plot-title}'
275             yaxis: '{01-plot-yaxis}'
276             group: '{01-plot-group}'
277             num-builds: '180'
278             keep-records: true
279             style: line
280             use-description: false
281             # yamllint disable-line rule:line-length
282             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
283             series:
284               - file: '{01-plot-data-file}'
285                 inclusion-flag: 'off'
286                 display-table: true
287                 format: csv
288           - title: '{02-plot-title}'
289             yaxis: '{02-plot-yaxis}'
290             group: '{02-plot-group}'
291             num-builds: '180'
292             keep-records: true
293             style: line
294             use-description: false
295             # yamllint disable-line rule:line-length
296             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
297             series:
298               - file: '{02-plot-data-file}'
299                 inclusion-flag: 'off'
300                 display-table: true
301                 format: csv
302           - title: '{03-plot-title}'
303             yaxis: '{03-plot-yaxis}'
304             group: '{03-plot-group}'
305             num-builds: '180'
306             keep-records: true
307             style: line
308             use-description: false
309             # yamllint disable-line rule:line-length
310             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{03-plot-data-file}-03-history.csv'
311             series:
312               - file: '{03-plot-data-file}'
313                 inclusion-flag: '{03-inclusion-flag}'
314                 exclude: '{03-exclude-value}'
315                 format: csv
316           - title: '{04-plot-title}'
317             yaxis: '{04-plot-yaxis}'
318             group: '{04-plot-group}'
319             num-builds: '180'
320             keep-records: true
321             style: line
322             use-description: false
323             # yamllint disable-line rule:line-length
324             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{04-plot-data-file}-04-history.csv'
325             series:
326               - file: '{04-plot-data-file}'
327                 inclusion-flag: '{04-inclusion-flag}'
328                 exclude: '{04-exclude-value}'
329                 format: csv
330           - title: '{05-plot-title}'
331             yaxis: '{05-plot-yaxis}'
332             group: '{05-plot-group}'
333             num-builds: '180'
334             keep-records: true
335             style: line
336             use-description: false
337             # yamllint disable-line rule:line-length
338             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{05-plot-data-file}-05-history.csv'
339             series:
340               - file: '{05-plot-data-file}'
341                 inclusion-flag: '{05-inclusion-flag}'
342                 exclude: '{05-exclude-value}'
343                 format: csv
344           - title: '{06-plot-title}'
345             yaxis: '{06-plot-yaxis}'
346             group: '{06-plot-group}'
347             num-builds: '180'
348             keep-records: true
349             style: line
350             use-description: false
351             # yamllint disable-line rule:line-length
352             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{06-plot-data-file}-06-history.csv'
353             series:
354               - file: '{06-plot-data-file}'
355                 inclusion-flag: '{06-inclusion-flag}'
356                 exclude: '{06-exclude-value}'
357                 format: csv
358           - title: '{07-plot-title}'
359             yaxis: '{07-plot-yaxis}'
360             group: '{07-plot-group}'
361             num-builds: '180'
362             keep-records: true
363             style: line
364             use-description: false
365             # yamllint disable-line rule:line-length
366             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{07-plot-data-file}-07-history.csv'
367             series:
368               - file: '{07-plot-data-file}'
369                 inclusion-flag: '{07-inclusion-flag}'
370                 exclude: '{07-exclude-value}'
371                 format: csv
372           - title: '{08-plot-title}'
373             yaxis: '{08-plot-yaxis}'
374             group: '{08-plot-group}'
375             num-builds: '180'
376             keep-records: true
377             style: line
378             use-description: false
379             # yamllint disable-line rule:line-length
380             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{08-plot-data-file}-08-history.csv'
381             series:
382               - file: '{08-plot-data-file}'
383                 inclusion-flag: '{08-inclusion-flag}'
384                 exclude: '{08-exclude-value}'
385                 format: csv
386           - title: '{09-plot-title}'
387             yaxis: '{09-plot-yaxis}'
388             group: '{09-plot-group}'
389             num-builds: '180'
390             keep-records: true
391             style: line
392             use-description: false
393             # yamllint disable-line rule:line-length
394             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{09-plot-data-file}-09-history.csv'
395             series:
396               - file: '{09-plot-data-file}'
397                 inclusion-flag: '{09-inclusion-flag}'
398                 exclude: '{09-exclude-value}'
399                 format: csv
400           - title: '{10-plot-title}'
401             yaxis: '{10-plot-yaxis}'
402             group: '{10-plot-group}'
403             num-builds: '180'
404             keep-records: true
405             style: line
406             use-description: false
407             # yamllint disable-line rule:line-length
408             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{10-plot-data-file}-10-history.csv'
409             series:
410               - file: '{10-plot-data-file}'
411                 inclusion-flag: '{10-inclusion-flag}'
412                 exclude: '{10-exclude-value}'
413                 format: csv
414       - integration-csit-publish:
415           robot_other_files: ''
416           robot-pass-threshold: 100.0
417           robot-unstable-threshold: 0.0
418       - lf-stack-delete:
419           openstack-cloud: '{openstack-cloud}'
420       - lf-infra-publish
421
422 - job-template:
423     name: '{prefix}{project}-csit-1node-{functionality}-{install}-{stream}'
424     id: inttest-csit-1node
425     <<: *inttest_csit_common
426     # yamllint disable-line rule:key-duplicates
427     <<: *inttest_csit_1node
428
429 - job-template:
430     name: '{prefix}{project}-csit-1node-{functionality}-{install}-{stream}'
431     id: inttest-csit-1node-custom
432     <<: *inttest_csit_common
433     # yamllint disable-line rule:key-duplicates
434     <<: *inttest_csit_1node
435
436     parameters:
437       - integration-csit-parameters:
438           archive-artifacts: '{archive-artifacts}'
439           branch: '{branch}'
440           os-cloud: '{os-cloud}'
441           # CSIT
442           bundle-url: '{bundle-url}'
443           repo-url: '{repo-url}'
444           robot-options: '{robot-options}'
445           # Controller
446           controller-scope: '{scope}'
447           debug-map: '{debug-map}'
448           install-features: '{install-features}'
449           use-features-boot: 'True'
450           elasticsearch-attribute: '{elasticsearch-attribute}'
451       - integration-stack-2-type:
452           vm_0_count: 1
453           vm_0_flavor: '{odl_system_flavor}'
454           vm_0_image: '{odl_system_image}'
455           vm_1_count: '{tools_system_count}'
456           vm_1_flavor: '{tools_system_flavor}'
457           vm_1_image: '{tools_system_image}'
458       - integration-distribution-branch:
459           branch: '{branch}'
460       - integration-distribution-stream:
461           stream: '{stream}'
462       - integration-script-plan:
463           script-plan: '{project}.txt'
464       - integration-config-plan:
465           config-plan: '{project}.txt'
466       - integration-stream-test-plan:
467           stream-test-plan: '{project}-{functionality}-{stream}.txt'
468       - integration-test-plan:
469           test-plan: '{testplan}'
470       - integration-test-suites:
471           test-suites: '{test-suites}'
472       - integration-patch-refspec:
473           branch: 'master'
474       - integration-jdk-version:
475           jdkversion: '{jre}'
476       - distribution-karaf-version:
477           karaf-version: '{karaf-version}'
478
479
480 - job-template:
481     name: '{prefix}{project}-csit-verify-3node-{functionality}'
482     id: inttest-csit-verify-3node
483     <<: *inttest_csit_common
484
485     #####################
486     # Default variables #
487     #####################
488
489     openstack-cloud: vex
490     openstack-heat-template: csit-2-instance-type.yaml
491     openstack-heat-template-dir: openstack-hot
492
493     odl_system_flavor: 'odl-highcpu-4'
494     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
495     tools_system_count: 1
496     tools_system_flavor: 'odl-highcpu-2'
497     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
498
499     #####################
500     # Job Configuration #
501     #####################
502
503     parameters:
504       - integration-csit-parameters:
505           archive-artifacts: '{archive-artifacts}'
506           branch: '{branch}'
507           os-cloud: '{os-cloud}'
508           # CSIT
509           bundle-url: '{bundle-url}'
510           repo-url: '{repo-url}'
511           robot-options: '{robot-options}'
512           # Controller
513           controller-scope: only
514           debug-map: '{debug-map}'
515           install-features: 'odl-jolokia,{install-features}'
516           use-features-boot: 'True'
517           elasticsearch-attribute: '{elasticsearch-attribute}'
518       - integration-stack-2-type:
519           vm_0_count: 3
520           vm_0_flavor: '{odl_system_flavor}'
521           vm_0_image: '{odl_system_image}'
522           vm_1_count: '{tools_system_count}'
523           vm_1_flavor: '{tools_system_flavor}'
524           vm_1_image: '{tools_system_image}'
525       - integration-distribution-branch:
526           branch: '{verify-branch}'
527       - integration-distribution-stream:
528           stream: '{verify-stream}'
529       - integration-script-plan:
530           script-plan: '{project}.txt'
531       - integration-config-plan:
532           config-plan: '{project}.txt'
533       - integration-stream-test-plan:
534           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
535       - integration-test-plan:
536           test-plan: '{project}-{functionality}.txt'
537       - integration-test-suites:
538           test-suites: '{test-suites}'
539       - integration-jdk-version:
540           jdkversion: '{verify-jdkversion}'
541       - distribution-karaf-version:
542           karaf-version: '{verify-karaf-version}'
543
544     scm:
545       - integration-gerrit-scm:
546           basedir: 'test'
547           refspec: '$GERRIT_REFSPEC'
548           branch: 'master'
549
550     triggers:
551       - integration-trigger-patch-submitted:
552           gerrit-server-name: '{gerrit-server-name}'
553           project: 'integration/test'
554           branch: 'master'
555           files: 'csit/suites/{project}/**'
556
557     builders:
558       - lf-infra-pre-build
559       - integration-stack-2-type:
560           openstack-cloud: '{openstack-cloud}'
561           openstack-heat-template: '{openstack-heat-template}'
562           openstack-heat-template-dir: '{openstack-heat-template-dir}'
563       - integration-install-robotframework
564       - inject:
565           properties-file: 'env.properties'
566       - integration-get-slave-addresses
567       - inject:
568           properties-file: 'slave_addresses.txt'
569       - integration-detect-variables
570       - integration-install-common-functions
571       - integration-configure-clustering
572       - integration-start-cluster-run-test
573       - integration-cleanup-tmp
574
575     publishers:
576       - email-notification:
577           email-recipients: '{email-recipients}'
578           email-prefix: '[{project}]'
579       - integration-csit-publish:
580           robot_other_files: ''
581           robot-pass-threshold: 100.0
582           robot-unstable-threshold: 0.0
583       - lf-stack-delete:
584           openstack-cloud: '{openstack-cloud}'
585       - lf-infra-publish
586
587
588 ######################
589 # inttest-csit-3node #
590 ######################
591
592 - inttest_csit_3node: &inttest_csit_3node
593     name: inttest-csit-3node
594
595     #####################
596     # Default variables #
597     #####################
598
599     openstack-cloud: vex
600     openstack-heat-template: csit-2-instance-type.yaml
601     openstack-heat-template-dir: openstack-hot
602
603     odl_system_flavor: 'odl-highcpu-4'
604     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
605     tools_system_count: 1
606     tools_system_flavor: 'odl-highcpu-2'
607     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
608
609     #####################
610     # Job configuration #
611     #####################
612
613     parameters:
614       - integration-csit-parameters:
615           archive-artifacts: '{archive-artifacts}'
616           branch: '{branch}'
617           os-cloud: '{os-cloud}'
618           # CSIT
619           bundle-url: '{bundle-url}'
620           repo-url: '{repo-url}'
621           robot-options: '{robot-options}'
622           # Controller
623           controller-scope: '{scope}'
624           debug-map: '{debug-map}'
625           install-features: 'odl-jolokia,{install-features}'
626           use-features-boot: 'True'
627           elasticsearch-attribute: '{elasticsearch-attribute}'
628       - integration-stack-2-type:
629           vm_0_count: 3
630           vm_0_flavor: '{odl_system_flavor}'
631           vm_0_image: '{odl_system_image}'
632           vm_1_count: '{tools_system_count}'
633           vm_1_flavor: '{tools_system_flavor}'
634           vm_1_image: '{tools_system_image}'
635       - integration-distribution-branch:
636           branch: '{branch}'
637       - integration-distribution-stream:
638           stream: '{stream}'
639       - integration-script-plan:
640           script-plan: '{project}.txt'
641       - integration-config-plan:
642           config-plan: '{project}.txt'
643       - integration-stream-test-plan:
644           stream-test-plan: '{project}-{functionality}-{stream}.txt'
645       - integration-test-plan:
646           test-plan: '{project}-{functionality}.txt'
647       - integration-test-suites:
648           test-suites: '{test-suites}'
649       - integration-patch-refspec:
650           branch: 'master'
651       - integration-jdk-version:
652           jdkversion: '{jre}'
653       - distribution-karaf-version:
654           karaf-version: '{karaf-version}'
655
656     scm:
657       - integration-gerrit-scm:
658           basedir: 'test'
659           refspec: '$PATCHREFSPEC'
660           branch: 'master'
661
662     triggers:
663       # we need this for not SR projects
664       - integration-csit-trigger:
665           jobs: '{trigger-jobs}'
666
667     builders:
668       - lf-infra-pre-build
669       - integration-stack-2-type:
670           openstack-cloud: '{openstack-cloud}'
671           openstack-heat-template: '{openstack-heat-template}'
672           openstack-heat-template-dir: '{openstack-heat-template-dir}'
673       - integration-install-robotframework
674       - inject:
675           properties-file: 'env.properties'
676       - integration-get-slave-addresses
677       - inject:
678           properties-file: 'slave_addresses.txt'
679       - integration-detect-variables
680       - integration-install-common-functions
681       - integration-configure-clustering
682       - integration-start-cluster-run-test
683       - integration-cleanup-tmp
684
685     publishers:
686       - email-notification:
687           email-recipients: '{email-recipients}'
688           email-prefix: '[{project}]'
689       - plot:
690           - title: '{01-plot-title}'
691             yaxis: '{01-plot-yaxis}'
692             group: '{01-plot-group}'
693             num-builds: '180'
694             keep-records: true
695             style: line
696             use-description: false
697             # yamllint disable-line rule:line-length
698             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
699             series:
700               - file: '{01-plot-data-file}'
701                 inclusion-flag: 'off'
702                 display-table: true
703                 format: csv
704           - title: '{02-plot-title}'
705             yaxis: '{02-plot-yaxis}'
706             group: '{02-plot-group}'
707             num-builds: '180'
708             keep-records: true
709             style: line
710             use-description: false
711             # yamllint disable-line rule:line-length
712             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
713             series:
714               - file: '{02-plot-data-file}'
715                 inclusion-flag: 'off'
716                 display-table: true
717                 format: csv
718           - title: '{03-plot-title}'
719             yaxis: '{03-plot-yaxis}'
720             group: '{03-plot-group}'
721             num-builds: '180'
722             keep-records: true
723             style: line
724             use-description: false
725             # yamllint disable-line rule:line-length
726             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{03-plot-data-file}-03-history.csv'
727             series:
728               - file: '{03-plot-data-file}'
729                 inclusion-flag: '{03-inclusion-flag}'
730                 exclude: '{03-exclude-value}'
731                 format: csv
732           - title: '{04-plot-title}'
733             yaxis: '{04-plot-yaxis}'
734             group: '{04-plot-group}'
735             num-builds: '180'
736             keep-records: true
737             style: line
738             use-description: false
739             # yamllint disable-line rule:line-length
740             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{04-plot-data-file}-04-history.csv'
741             series:
742               - file: '{04-plot-data-file}'
743                 inclusion-flag: '{04-inclusion-flag}'
744                 exclude: '{04-exclude-value}'
745                 format: csv
746           - title: '{05-plot-title}'
747             yaxis: '{05-plot-yaxis}'
748             group: '{05-plot-group}'
749             num-builds: '180'
750             keep-records: true
751             style: line
752             use-description: false
753             # yamllint disable-line rule:line-length
754             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{05-plot-data-file}-05-history.csv'
755             series:
756               - file: '{05-plot-data-file}'
757                 inclusion-flag: '{05-inclusion-flag}'
758                 exclude: '{05-exclude-value}'
759                 format: csv
760           - title: '{06-plot-title}'
761             yaxis: '{06-plot-yaxis}'
762             group: '{06-plot-group}'
763             num-builds: '180'
764             keep-records: true
765             style: line
766             use-description: false
767             # yamllint disable-line rule:line-length
768             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{06-plot-data-file}-06-history.csv'
769             series:
770               - file: '{06-plot-data-file}'
771                 inclusion-flag: '{06-inclusion-flag}'
772                 exclude: '{06-exclude-value}'
773                 format: csv
774           - title: '{07-plot-title}'
775             yaxis: '{07-plot-yaxis}'
776             group: '{07-plot-group}'
777             num-builds: '180'
778             keep-records: true
779             style: line
780             use-description: false
781             # yamllint disable-line rule:line-length
782             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{07-plot-data-file}-07-history.csv'
783             series:
784               - file: '{07-plot-data-file}'
785                 inclusion-flag: '{07-inclusion-flag}'
786                 exclude: '{07-exclude-value}'
787                 format: csv
788           - title: '{08-plot-title}'
789             yaxis: '{08-plot-yaxis}'
790             group: '{08-plot-group}'
791             num-builds: '180'
792             keep-records: true
793             style: line
794             use-description: false
795             # yamllint disable-line rule:line-length
796             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{08-plot-data-file}-08-history.csv'
797             series:
798               - file: '{08-plot-data-file}'
799                 inclusion-flag: '{08-inclusion-flag}'
800                 exclude: '{08-exclude-value}'
801                 format: csv
802           - title: '{09-plot-title}'
803             yaxis: '{09-plot-yaxis}'
804             group: '{09-plot-group}'
805             num-builds: '180'
806             keep-records: true
807             style: line
808             use-description: false
809             # yamllint disable-line rule:line-length
810             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{09-plot-data-file}-09-history.csv'
811             series:
812               - file: '{09-plot-data-file}'
813                 inclusion-flag: '{09-inclusion-flag}'
814                 exclude: '{09-exclude-value}'
815                 format: csv
816           - title: '{10-plot-title}'
817             yaxis: '{10-plot-yaxis}'
818             group: '{10-plot-group}'
819             num-builds: '180'
820             keep-records: true
821             style: line
822             use-description: false
823             # yamllint disable-line rule:line-length
824             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{10-plot-data-file}-10-history.csv'
825             series:
826               - file: '{10-plot-data-file}'
827                 inclusion-flag: '{10-inclusion-flag}'
828                 exclude: '{10-exclude-value}'
829                 format: csv
830       - integration-csit-publish:
831           robot_other_files: ''
832           robot-pass-threshold: 100.0
833           robot-unstable-threshold: 0.0
834       - lf-stack-delete:
835           openstack-cloud: '{openstack-cloud}'
836       - lf-infra-publish
837
838 - job-template:
839     name: '{prefix}{project}-csit-3node-{functionality}-{install}-{stream}'
840     id: inttest-csit-3node
841     <<: *inttest_csit_common
842     # yamllint disable-line rule:key-duplicates
843     <<: *inttest_csit_3node
844
845 - job-template:
846     name: '{prefix}{project}-csit-3node-{functionality}-{install}-{stream}'
847     id: inttest-csit-3node-custom
848     <<: *inttest_csit_common
849     # yamllint disable-line rule:key-duplicates
850     <<: *inttest_csit_3node
851
852     parameters:
853       - integration-csit-parameters:
854           archive-artifacts: '{archive-artifacts}'
855           branch: '{branch}'
856           os-cloud: '{os-cloud}'
857           # CSIT
858           bundle-url: '{bundle-url}'
859           repo-url: '{repo-url}'
860           robot-options: '{robot-options}'
861           # Controller
862           controller-scope: '{scope}'
863           debug-map: '{debug-map}'
864           install-features: 'odl-jolokia,{install-features}'
865           use-features-boot: 'True'
866           elasticsearch-attribute: '{elasticsearch-attribute}'
867       - integration-stack-2-type:
868           vm_0_count: 3
869           vm_0_flavor: '{odl_system_flavor}'
870           vm_0_image: '{odl_system_image}'
871           vm_1_count: '{tools_system_count}'
872           vm_1_flavor: '{tools_system_flavor}'
873           vm_1_image: '{tools_system_image}'
874       - integration-distribution-branch:
875           branch: '{branch}'
876       - integration-distribution-stream:
877           stream: '{stream}'
878       - integration-script-plan:
879           script-plan: '{project}.txt'
880       - integration-config-plan:
881           config-plan: '{project}.txt'
882       - integration-stream-test-plan:
883           stream-test-plan: '{project}-{functionality}-{stream}.txt'
884       - integration-test-plan:
885           test-plan: '{testplan}'
886       - integration-test-suites:
887           test-suites: '{test-suites}'
888       - integration-patch-refspec:
889           branch: 'master'
890       - integration-jdk-version:
891           jdkversion: '{jre}'
892       - distribution-karaf-version:
893           karaf-version: '{karaf-version}'
894
895
896 - job-template:
897     name: '{prefix}{project}-csit-3node-docker-{functionality}-{install}-{stream}'
898     id: inttest-csit-3node-docker
899     <<: *inttest_csit_common
900
901     #####################
902     # Default variables #
903     #####################
904
905     openstack-cloud: vex
906     openstack-heat-template: csit-2-instance-type.yaml
907     openstack-heat-template-dir: openstack-hot
908
909     odl_system_count: 1
910     odl_system_flavor: 'odl-highcpu-4'
911     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
912     docker_system_count: 1
913     docker_system_flavor: 'odl-standard-1'
914     docker_system_image: 'ZZCI - CentOS 7 - docker - x86_64 - 20191004-045622.840'
915
916     #####################
917     # Job Configuration #
918     #####################
919
920     parameters:
921       - integration-csit-parameters:
922           archive-artifacts: '{archive-artifacts}'
923           branch: '{branch}'
924           os-cloud: '{os-cloud}'
925           # CSIT
926           bundle-url: '{bundle-url}'
927           repo-url: '{repo-url}'
928           robot-options: '{robot-options}'
929           # Controller
930           controller-scope: '{scope}'
931           debug-map: '{debug-map}'
932           install-features: 'odl-jolokia,{install-features}'
933           use-features-boot: 'True'
934           elasticsearch-attribute: '{elasticsearch-attribute}'
935       - integration-stack-2-type:
936           vm_0_count: 3
937           vm_0_flavor: '{odl_system_flavor}'
938           vm_0_image: '{odl_system_image}'
939           vm_1_count: '{docker_system_count}'
940           vm_1_flavor: '{docker_system_flavor}'
941           vm_1_image: '{docker_system_image}'
942       - integration-distribution-branch:
943           branch: '{branch}'
944       - integration-distribution-stream:
945           stream: '{stream}'
946       - integration-script-plan:
947           script-plan: '{project}.txt'
948       - integration-config-plan:
949           config-plan: '{project}.txt'
950       - integration-stream-test-plan:
951           stream-test-plan: '{project}-{functionality}-{stream}.txt'
952       - integration-test-plan:
953           test-plan: '{project}-{functionality}.txt'
954       - integration-patch-refspec:
955           branch: 'master'
956       - integration-jdk-version:
957           jdkversion: '{jre}'
958       - distribution-karaf-version:
959           karaf-version: '{karaf-version}'
960
961     scm:
962       - integration-gerrit-scm:
963           basedir: 'test'
964           refspec: '$PATCHREFSPEC'
965           branch: 'master'
966
967     builders:
968       - lf-infra-pre-build
969       - integration-stack-2-type:
970           openstack-cloud: '{openstack-cloud}'
971           openstack-heat-template: '{openstack-heat-template}'
972           openstack-heat-template-dir: '{openstack-heat-template-dir}'
973       - integration-install-robotframework
974       - inject:
975           properties-file: 'env.properties'
976       - integration-get-slave-addresses
977       - inject:
978           properties-file: 'slave_addresses.txt'
979       - integration-detect-variables
980       - integration-install-common-functions
981       - integration-configure-clustering
982       - integration-start-cluster-run-test
983       - integration-cleanup-tmp
984
985     publishers:
986       - email-notification:
987           email-recipients: '{email-recipients}'
988           email-prefix: '[{project}]'
989       - plot:
990           - title: '{01-plot-title}'
991             yaxis: '{01-plot-yaxis}'
992             group: '{01-plot-group}'
993             num-builds: '5400'
994             keep-records: true
995             style: line
996             use-description: false
997             # yamllint disable-line rule:line-length
998             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
999             series:
1000               - file: '{01-plot-data-file}'
1001                 inclusion-flag: 'off'
1002                 display-table: true
1003                 format: csv
1004           - title: '{02-plot-title}'
1005             yaxis: '{02-plot-yaxis}'
1006             group: '{02-plot-group}'
1007             num-builds: '5400'
1008             keep-records: true
1009             style: line
1010             use-description: false
1011             # yamllint disable-line rule:line-length
1012             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
1013             series:
1014               - file: '{02-plot-data-file}'
1015                 inclusion-flag: 'off'
1016                 display-table: true
1017                 format: csv
1018       - integration-csit-publish:
1019           robot_other_files: ''
1020           robot-pass-threshold: 100.0
1021           robot-unstable-threshold: 0.0
1022       - lf-stack-delete:
1023           openstack-cloud: '{openstack-cloud}'
1024       - lf-infra-publish
1025
1026
1027 #################################
1028 # inttest-csit-hwvtep-openstack #
1029 #################################
1030
1031 - inttest_csit_hwvtep_openstack: &inttest_csit_hwvtep_openstack
1032     name: inttest-csit-hwvtep-openstack
1033
1034     #####################
1035     # Default variables #
1036     #####################
1037
1038     openstack-cloud: vex
1039     openstack-heat-template: csit-4-instance-type.yaml
1040     openstack-heat-template-dir: openstack-hot
1041
1042     odl_system_count: 1
1043     odl_system_flavor: 'odl-highcpu-4'
1044     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
1045     openstack_system_count: 1
1046     openstack_system_flavor: 'odl-standard-4'
1047     openstack_system_image: 'ZZCI - CentOS 7 - devstack - x86_64 - 20191004-045548.485'
1048     openstack_system2_count: 0
1049     openstack_system2_flavor: 'odl-standard-1'
1050     openstack_system2_image: 'ZZCI - CentOS 7 - devstack - x86_64 - 20191004-045548.485'
1051     tools_system_count: 1
1052     tools_system_flavor: 'odl-highcpu-2'
1053     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
1054
1055     #####################
1056     # Job configuration #
1057     #####################
1058
1059     parameters:
1060       - integration-csit-parameters:
1061           archive-artifacts: '{archive-artifacts}'
1062           branch: '{branch}'
1063           os-cloud: '{os-cloud}'
1064           # CSIT
1065           bundle-url: '{bundle-url}'
1066           repo-url: '{repo-url}'
1067           robot-options: '{robot-options}'
1068           # Controller
1069           controller-scope: ''
1070           debug-map: '{debug-map}'
1071           install-features: '{install-features}'
1072           use-features-boot: '{use-features-boot}'
1073           elasticsearch-attribute: '{elasticsearch-attribute}'
1074       - integration-stack-4-type:
1075           vm_0_count: '{odl_system_count}'
1076           vm_0_flavor: '{odl_system_flavor}'
1077           vm_0_image: '{odl_system_image}'
1078           vm_1_count: '{openstack_system_count}'
1079           vm_1_flavor: '{openstack_system_flavor}'
1080           vm_1_image: '{openstack_system_image}'
1081           vm_2_count: '{openstack_system2_count}'
1082           vm_2_flavor: '{openstack_system2_flavor}'
1083           vm_2_image: '{openstack_system2_image}'
1084           vm_3_count: '{tools_system_count}'
1085           vm_3_flavor: '{tools_system_flavor}'
1086           vm_3_image: '{tools_system_image}'
1087       - integration-distribution-branch:
1088           branch: '{branch}'
1089       - integration-distribution-stream:
1090           stream: '{stream}'
1091       - integration-script-plan:
1092           script-plan: '{project}.txt'
1093       - integration-config-plan:
1094           config-plan: '{project}.txt'
1095       - integration-test-plan:
1096           test-plan: '{project}-{functionality}.txt'
1097       - integration-test-suites:
1098           test-suites: '{test-suites}'
1099       - integration-patch-refspec:
1100           branch: 'master'
1101       - integration-jdk-version:
1102           jdkversion: '{jre}'
1103       - distribution-karaf-version:
1104           karaf-version: '{karaf-version}'
1105       - string:
1106           name: OPENSTACK_BRANCH
1107           default: '{openstack-branch}'
1108           description: 'Openstack version to use with devstack'
1109       - string:
1110           name: DEVSTACK_HASH
1111           default: '{devstack-hash}'
1112           description: 'devstack hash to checkout'
1113       - string:
1114           name: ODL_ML2_DRIVER_REPO
1115           default: '{odl-ml2-driver-repo}'
1116           description: 'URL to fetch networking-odl driver'
1117       - string:
1118           name: ODL_ML2_BRANCH
1119           default: '{odl-ml2-branch}'
1120           description: 'Version of networking-odl to checkout from the repo'
1121       - string:
1122           name: ODL_ML2_DRIVER_VERSION
1123           default: '{odl-ml2-driver-version}'
1124           description: 'Mode of networking-odl (v1 or v2)'
1125       - string:
1126           name: ODL_ML2_PORT_BINDING
1127           default: '{odl-ml2-port-binding}'
1128           description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
1129           network-topology)'
1130       - string:
1131           name: DEVSTACK_KUBERNETES_PLUGIN_REPO
1132           default: '{devstack-kubernetes-plugin-repo}'
1133           description: 'URL to fetch kubernetes devstack plugin'
1134       - string:
1135           name: DEVSTACK_LBAAS_PLUGIN_REPO
1136           default: '{devstack-lbaas-plugin-repo}'
1137           description: 'URL to fetch neutron-lbaas devstack plugin'
1138       - string:
1139           name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
1140           default: '{devstack-networking-sfc-plugin-repo}'
1141           description: 'URL to fetch neutron-lbaas devstack plugin'
1142       - string:
1143           name: IPSEC_VXLAN_TUNNELS_ENABLED
1144           default: '{ipsec-vxlan-tunnels-enabled}'
1145           description: 'Enable ipsec over vxlan support for all controllers and computes'
1146       - string:
1147           name: PUBLIC_BRIDGE
1148           default: '{public-bridge}'
1149           description: 'Specifies public bridge for provider and external networking'
1150       - string:
1151           name: ENABLE_HAPROXY_FOR_NEUTRON
1152           default: '{enable-haproxy}'
1153           description: 'Enable HAProxy for using neutron interface as HA'
1154       - string:
1155           name: ENABLE_OS_SERVICES
1156           default: '{enable-openstack-services}'
1157           description: 'comma separated list of services to enable on controller nodes'
1158       - string:
1159           name: ENABLE_OS_COMPUTE_SERVICES
1160           default: '{enable-openstack-compute-services}'
1161           description: 'comma separated list of services to enable on compute nodes'
1162       - string:
1163           name: ENABLE_OS_NETWORK_SERVICES
1164           default: '{enable-openstack-network-services}'
1165           description: 'comma seperated list of network services to enable'
1166       - string:
1167           name: ENABLE_OS_PLUGINS
1168           default: '{enable-openstack-plugins}'
1169           description: 'comma seperated list of plugins to enable'
1170       - string:
1171           name: DISABLE_OS_SERVICES
1172           default: '{disable-openstack-services}'
1173           description: 'comma seperated list of services to enable'
1174       - string:
1175           name: TENANT_NETWORK_TYPE
1176           default: '{tenant-network-type}'
1177           description: 'Tenant Network Type supported by the implementation'
1178       - string:
1179           name: SECURITY_GROUP_MODE
1180           default: '{security-group-mode}'
1181           description: 'Security Group Mode to be used in netvirt aclservice config'
1182       - string:
1183           name: ENABLE_ITM_DIRECT_TUNNELS
1184           default: '{enable-itm-direct-tunnels}'
1185           description: 'Tunnel Configuration mode to be used in genius ifm config'
1186       - string:
1187           name: PUBLIC_PHYSICAL_NETWORK
1188           default: '{public-physical-network}'
1189           description: 'provider physical network used for flat/vlan networks'
1190       - string:
1191           name: ENABLE_NETWORKING_L2GW
1192           default: '{enable-networking-l2gw}'
1193           description: 'Enable networking L2gw'
1194       - string:
1195           name: NETWORKING_L2GW_DRIVER
1196           default: '{networking-l2gw-repo}'
1197           description: 'URL to fetch networking-l2gw driver'
1198       - string:
1199           name: CREATE_INITIAL_NETWORKS
1200           default: '{create-initial-networks}'
1201           description: 'Toggles the option of letting devstack create initial networks (True/False)'
1202       - string:
1203           name: LBAAS_SERVICE_PROVIDER
1204           default: '{lbaas-service-provider}'
1205           description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
1206           neutron-lbaas'
1207       - string:
1208           name: ODL_SFC_DRIVER
1209           default: '{odl-sfc-driver}'
1210           description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
1211       - string:
1212           name: ODL_SNAT_MODE
1213           default: '{odl-snat-mode}'
1214           description: 'The SNAT mode to be configured - options are conntrack/controller.'
1215       - string:
1216           name: OVS_INSTALL
1217           default: '{ovs-install}'
1218           description: 'Install a custom OVS. It can be an OVS version to build (like v2.9.2 or v2.6.1-nsh) or a yum
1219           repo url to pull from.'
1220
1221     scm:
1222       - integration-gerrit-scm:
1223           basedir: 'test'
1224           refspec: '$PATCHREFSPEC'
1225           branch: 'master'
1226
1227     triggers:
1228       - timed: '{schedule}'
1229
1230     builders:
1231       - lf-infra-pre-build
1232       - integration-stack-4-type:
1233           openstack-cloud: '{openstack-cloud}'
1234           openstack-heat-template: '{openstack-heat-template}'
1235           openstack-heat-template-dir: '{openstack-heat-template-dir}'
1236       - integration-install-robotframework
1237       - inject:
1238           properties-file: 'env.properties'
1239       - integration-get-slave-addresses
1240       - inject:
1241           properties-file: 'slave_addresses.txt'
1242       - integration-detect-variables
1243       - integration-install-common-functions
1244       - integration-deploy-controller-run-test
1245       - integration-deploy-openstack-run-test
1246       - integration-cleanup-tmp
1247
1248     publishers:
1249       - email-notification:
1250           email-recipients: '{email-recipients}'
1251           email-prefix: '[{project}]'
1252       - integration-csit-collect-netvirt-logs
1253       - integration-csit-publish:
1254           robot_other_files:
1255             - tempest_results.html
1256           robot-pass-threshold: 100.0
1257           robot-unstable-threshold: 0.0
1258       - lf-stack-delete:
1259           openstack-cloud: '{openstack-cloud}'
1260       - lf-infra-publish
1261
1262 - job-template:
1263     # yamllint disable-line rule:line-length
1264     name: '{prefix}{project}-csit-hwvtep-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-openstack-{openstack}-{functionality}-{stream}'
1265     id: inttest-csit-hwvtep-openstack
1266     <<: *inttest_csit_common
1267     # yamllint disable-line rule:key-duplicates
1268     <<: *inttest_csit_hwvtep_openstack
1269
1270 - job-template:
1271     # yamllint disable-line rule:line-length
1272     name: '{prefix}{project}-csit-hwvtep-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-openstack-{openstack}-{functionality}-{stream}'
1273     id: inttest-csit-hwvtep-openstack-custom
1274     <<: *inttest_csit_common
1275     # yamllint disable-line rule:key-duplicates
1276     <<: *inttest_csit_hwvtep_openstack
1277
1278     parameters:
1279       - integration-csit-parameters:
1280           archive-artifacts: '{archive-artifacts}'
1281           branch: '{branch}'
1282           os-cloud: '{os-cloud}'
1283           # CSIT
1284           bundle-url: '{bundle-url}'
1285           repo-url: '{repo-url}'
1286           robot-options: '{robot-options}'
1287           # Controller
1288           controller-scope: ''
1289           debug-map: '{debug-map}'
1290           install-features: '{install-features}'
1291           use-features-boot: '{use-features-boot}'
1292           elasticsearch-attribute: '{elasticsearch-attribute}'
1293       - integration-stack-4-type:
1294           vm_0_count: '{odl_system_count}'
1295           vm_0_flavor: '{odl_system_flavor}'
1296           vm_0_image: '{odl_system_image}'
1297           vm_1_count: '{openstack_system_count}'
1298           vm_1_flavor: '{openstack_system_flavor}'
1299           vm_1_image: '{openstack_system_image}'
1300           vm_2_count: '{openstack_system2_count}'
1301           vm_2_flavor: '{openstack_system2_flavor}'
1302           vm_2_image: '{openstack_system2_image}'
1303           vm_3_count: '{tools_system_count}'
1304           vm_3_flavor: '{tools_system_flavor}'
1305           vm_3_image: '{tools_system_image}'
1306       - integration-distribution-branch:
1307           branch: '{branch}'
1308       - integration-distribution-stream:
1309           stream: '{stream}'
1310       - integration-script-plan:
1311           script-plan: '{project}.txt'
1312       - integration-config-plan:
1313           config-plan: '{project}.txt'
1314       - integration-test-plan:
1315           test-plan: '{testplan}'
1316       - integration-test-suites:
1317           test-suites: '{test-suites}'
1318       - integration-patch-refspec:
1319           branch: 'master'
1320       - integration-jdk-version:
1321           jdkversion: '{jre}'
1322       - distribution-karaf-version:
1323           karaf-version: '{karaf-version}'
1324       - string:
1325           name: OPENSTACK_BRANCH
1326           default: '{openstack-branch}'
1327           description: 'Openstack version to use with devstack'
1328       - string:
1329           name: DEVSTACK_HASH
1330           default: '{devstack-hash}'
1331           description: 'devstack hash to checkout'
1332       - string:
1333           name: ODL_ML2_DRIVER_REPO
1334           default: '{odl-ml2-driver-repo}'
1335           description: 'URL to fetch networking-odl driver'
1336       - string:
1337           name: ODL_ML2_BRANCH
1338           default: '{odl-ml2-branch}'
1339           description: 'Version of networking-odl to checkout from the repo'
1340       - string:
1341           name: ODL_ML2_DRIVER_VERSION
1342           default: '{odl-ml2-driver-version}'
1343           description: 'Mode of networking-odl (v1 or v2)'
1344       - string:
1345           name: ODL_ML2_PORT_BINDING
1346           default: '{odl-ml2-port-binding}'
1347           description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
1348           network-topology)'
1349       - string:
1350           name: DEVSTACK_KUBERNETES_PLUGIN_REPO
1351           default: '{devstack-kubernetes-plugin-repo}'
1352           description: 'URL to fetch kubernetes devstack plugin'
1353       - string:
1354           name: DEVSTACK_LBAAS_PLUGIN_REPO
1355           default: '{devstack-lbaas-plugin-repo}'
1356           description: 'URL to fetch neutron-lbaas devstack plugin'
1357       - string:
1358           name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
1359           default: '{devstack-networking-sfc-plugin-repo}'
1360           description: 'URL to fetch neutron-lbaas devstack plugin'
1361       - string:
1362           name: IPSEC_VXLAN_TUNNELS_ENABLED
1363           default: '{ipsec-vxlan-tunnels-enabled}'
1364           description: 'Enable ipsec over vxlan support for all controllers and computes'
1365       - string:
1366           name: PUBLIC_BRIDGE
1367           default: '{public-bridge}'
1368           description: 'Specifies public bridge for provider and external networking'
1369       - string:
1370           name: ENABLE_HAPROXY_FOR_NEUTRON
1371           default: '{enable-haproxy}'
1372           description: 'Enable HAProxy for using neutron interface as HA'
1373       - string:
1374           name: ENABLE_OS_SERVICES
1375           default: '{enable-openstack-services}'
1376           description: 'comma separated list of services to enable on controller nodes'
1377       - string:
1378           name: ENABLE_OS_COMPUTE_SERVICES
1379           default: '{enable-openstack-compute-services}'
1380           description: 'comma separated list of services to enable on compute nodes'
1381       - string:
1382           name: ENABLE_OS_NETWORK_SERVICES
1383           default: '{enable-openstack-network-services}'
1384           description: 'comma seperated list of network services to enable'
1385       - string:
1386           name: ENABLE_OS_PLUGINS
1387           default: '{enable-openstack-plugins}'
1388           description: 'comma seperated list of plugins to enable'
1389       - string:
1390           name: DISABLE_OS_SERVICES
1391           default: '{disable-openstack-services}'
1392           description: 'comma seperated list of services to enable'
1393       - string:
1394           name: TENANT_NETWORK_TYPE
1395           default: '{tenant-network-type}'
1396           description: 'Tenant Network Type supported by the implementation'
1397       - string:
1398           name: SECURITY_GROUP_MODE
1399           default: '{security-group-mode}'
1400           description: 'Security Group Mode to be used in netvirt aclservice config'
1401       - string:
1402           name: ENABLE_ITM_DIRECT_TUNNELS
1403           default: '{enable-itm-direct-tunnels}'
1404           description: 'Tunnel Configuration mode to be used in genius ifm config'
1405       - string:
1406           name: PUBLIC_PHYSICAL_NETWORK
1407           default: '{public-physical-network}'
1408           description: 'provider physical network used for flat/vlan networks'
1409       - string:
1410           name: ENABLE_NETWORKING_L2GW
1411           default: '{enable-networking-l2gw}'
1412           description: 'Enable networking L2gw'
1413       - string:
1414           name: NETWORKING_L2GW_DRIVER
1415           default: '{networking-l2gw-repo}'
1416           description: 'URL to fetch networking-l2gw driver'
1417       - string:
1418           name: CREATE_INITIAL_NETWORKS
1419           default: '{create-initial-networks}'
1420           description: 'Toggles the option of letting devstack create initial networks (True/False)'
1421       - string:
1422           name: LBAAS_SERVICE_PROVIDER
1423           default: '{lbaas-service-provider}'
1424           description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
1425           neutron-lbaas'
1426       - string:
1427           name: ODL_SFC_DRIVER
1428           default: '{odl-sfc-driver}'
1429           description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
1430       - string:
1431           name: ODL_SNAT_MODE
1432           default: '{odl-snat-mode}'
1433           description: 'The SNAT mode to be configured - options are conntrack/controller.'
1434       - string:
1435           name: OVS_INSTALL
1436           default: '{ovs-install}'
1437           description: 'Install a custom OVS. It can be an OVS version to build (like v2.9.2 or v2.6.1-nsh) or a yum
1438           repo url to pull from.'
1439
1440
1441 ##########################
1442 # inttest-csit-openstack #
1443 ##########################
1444
1445 - inttest_csit_openstack: &inttest_csit_openstack
1446     name: inttest-csit-openstack
1447
1448     #####################
1449     # Default variables #
1450     #####################
1451
1452     openstack-cloud: vex
1453     openstack-heat-template: csit-4-instance-type.yaml
1454     openstack-heat-template-dir: openstack-hot
1455
1456     odl_system_count: 1
1457     odl_system_flavor: 'odl-highcpu-4'
1458     odl_system_image: 'ZZCI - CentOS 7 - builder - x86_64 - 20190924-232354.381'
1459     openstack_system_count: 1
1460     openstack_system_flavor: 'odl-standard-4'
1461     openstack_system_image: 'ZZCI - CentOS 7 - devstack - x86_64 - 20191004-045548.485'
1462     openstack_system2_count: 0
1463     openstack_system2_flavor: 'odl-standard-1'
1464     openstack_system2_image: 'ZZCI - CentOS 7 - devstack - x86_64 - 20191004-045548.485'
1465     tools_system_count: 1
1466     tools_system_flavor: 'odl-highcpu-2'
1467     tools_system_image: 'ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20190416-121328.240'
1468
1469     #####################
1470     # Job configuration #
1471     #####################
1472
1473     parameters:
1474       - integration-csit-parameters:
1475           archive-artifacts: '{archive-artifacts}'
1476           branch: '{branch}'
1477           os-cloud: '{os-cloud}'
1478           # CSIT
1479           bundle-url: '{bundle-url}'
1480           repo-url: '{repo-url}'
1481           robot-options: '{robot-options}'
1482           # Controller
1483           controller-scope: ''
1484           debug-map: '{debug-map}'
1485           install-features: '{install-features}'
1486           use-features-boot: '{use-features-boot}'
1487           elasticsearch-attribute: '{elasticsearch-attribute}'
1488       - integration-stack-4-type:
1489           vm_0_count: '{odl_system_count}'
1490           vm_0_flavor: '{odl_system_flavor}'
1491           vm_0_image: '{odl_system_image}'
1492           vm_1_count: '{openstack_system_count}'
1493           vm_1_flavor: '{openstack_system_flavor}'
1494           vm_1_image: '{openstack_system_image}'
1495           vm_2_count: '{openstack_system2_count}'
1496           vm_2_flavor: '{openstack_system2_flavor}'
1497           vm_2_image: '{openstack_system2_image}'
1498           vm_3_count: '{tools_system_count}'
1499           vm_3_flavor: '{tools_system_flavor}'
1500           vm_3_image: '{tools_system_image}'
1501       - integration-distribution-branch:
1502           branch: '{branch}'
1503       - integration-distribution-stream:
1504           stream: '{stream}'
1505       - integration-script-plan:
1506           script-plan: '{project}.txt'
1507       - integration-config-plan:
1508           config-plan: '{project}.txt'
1509       - integration-test-plan:
1510           test-plan: '{project}-{functionality}.txt'
1511       - integration-test-suites:
1512           test-suites: '{test-suites}'
1513       - integration-patch-refspec:
1514           branch: 'master'
1515       - integration-jdk-version:
1516           jdkversion: '{jre}'
1517       - distribution-karaf-version:
1518           karaf-version: '{karaf-version}'
1519       - string:
1520           name: OPENSTACK_BRANCH
1521           default: '{openstack-branch}'
1522           description: 'Openstack version to use with devstack'
1523       - string:
1524           name: DEVSTACK_HASH
1525           default: '{devstack-hash}'
1526           description: 'devstack hash to checkout'
1527       - string:
1528           name: ODL_ML2_DRIVER_REPO
1529           default: '{odl-ml2-driver-repo}'
1530           description: 'URL to fetch networking-odl driver'
1531       - string:
1532           name: ODL_ML2_BRANCH
1533           default: '{odl-ml2-branch}'
1534           description: 'Version of networking-odl to checkout from the repo'
1535       - string:
1536           name: ODL_ML2_DRIVER_VERSION
1537           default: '{odl-ml2-driver-version}'
1538           description: 'Mode of networking-odl (v1 or v2)'
1539       - string:
1540           name: ODL_ML2_PORT_BINDING
1541           default: '{odl-ml2-port-binding}'
1542           description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
1543           network-topology)'
1544       - string:
1545           name: ENABLE_GRE_TYPE_DRIVERS
1546           default: '{enable-gre-type-driver}'
1547           description: 'Enable gre tunnel'
1548       - string:
1549           name: DEVSTACK_KUBERNETES_PLUGIN_REPO
1550           default: '{devstack-kubernetes-plugin-repo}'
1551           description: 'URL to fetch kubernetes devstack plugin'
1552       - string:
1553           name: DEVSTACK_LBAAS_PLUGIN_REPO
1554           default: '{devstack-lbaas-plugin-repo}'
1555           description: 'URL to fetch neutron-lbaas devstack plugin'
1556       - string:
1557           name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
1558           default: '{devstack-networking-sfc-plugin-repo}'
1559           description: 'URL to fetch neutron-lbaas devstack plugin'
1560       - string:
1561           name: IPSEC_VXLAN_TUNNELS_ENABLED
1562           default: '{ipsec-vxlan-tunnels-enabled}'
1563           description: 'Enable ipsec over vxlan support for all controllers and computes'
1564       - string:
1565           name: PUBLIC_BRIDGE
1566           default: '{public-bridge}'
1567           description: 'Specifies public bridge for provider and external networking'
1568       - string:
1569           name: ENABLE_HAPROXY_FOR_NEUTRON
1570           default: '{enable-haproxy}'
1571           description: 'Enable HAProxy for using neutron interface as HA'
1572       - string:
1573           name: ENABLE_OS_SERVICES
1574           default: '{enable-openstack-services}'
1575           description: 'comma seperated list of services to enable'
1576       - string:
1577           name: ENABLE_OS_COMPUTE_SERVICES
1578           default: '{enable-openstack-compute-services}'
1579           description: 'comma separated list of services to enable on compute nodes'
1580       - string:
1581           name: ENABLE_OS_NETWORK_SERVICES
1582           default: '{enable-openstack-network-services}'
1583           description: 'comma seperated list of network services to enable'
1584       - string:
1585           name: ENABLE_OS_PLUGINS
1586           default: '{enable-openstack-plugins}'
1587           description: 'comma seperated list of plugins to enable'
1588       - string:
1589           name: DISABLE_OS_SERVICES
1590           default: '{disable-openstack-services}'
1591           description: 'comma seperated list of services to enable'
1592       - string:
1593           name: TENANT_NETWORK_TYPE
1594           default: '{tenant-network-type}'
1595           description: 'Tenant Network Type supported by the implementation'
1596       - string:
1597           name: SECURITY_GROUP_MODE
1598           default: '{security-group-mode}'
1599           description: 'Security Group Mode to be used in netvirt aclservice config'
1600       - string:
1601           name: ENABLE_ITM_DIRECT_TUNNELS
1602           default: '{enable-itm-direct-tunnels}'
1603           description: 'Tunnel Configuration mode to be used in genius ifm config'
1604       - string:
1605           name: PUBLIC_PHYSICAL_NETWORK
1606           default: '{public-physical-network}'
1607           description: 'provider physical network used for flat/vlan networks'
1608       - string:
1609           name: ENABLE_NETWORKING_L2GW
1610           default: '{enable-networking-l2gw}'
1611           description: 'Enable networking L2gw'
1612       - string:
1613           name: NETWORKING_L2GW_DRIVER
1614           default: '{networking-l2gw-repo}'
1615           description: 'URL to fetch networking-l2gw driver'
1616       - string:
1617           name: CREATE_INITIAL_NETWORKS
1618           default: '{create-initial-networks}'
1619           description: 'Toggles the option of letting devstack create initial networks (True/False)'
1620       - string:
1621           name: LBAAS_SERVICE_PROVIDER
1622           default: '{lbaas-service-provider}'
1623           description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
1624           neutron-lbaas'
1625       - string:
1626           name: ODL_SFC_DRIVER
1627           default: '{odl-sfc-driver}'
1628           description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
1629       - string:
1630           name: ODL_SNAT_MODE
1631           default: '{odl-snat-mode}'
1632           description: 'The SNAT mode to be configured - options are conntrack/controller.'
1633       - string:
1634           name: OVS_INSTALL
1635           default: '{ovs-install}'
1636           description: 'Install a custom OVS. It can be an OVS version to build (like v2.9.2 or v2.6.1-nsh) or a yum
1637           repo url to pull from.'
1638
1639     scm:
1640       - integration-gerrit-scm:
1641           basedir: 'test'
1642           refspec: '$PATCHREFSPEC'
1643           branch: 'master'
1644
1645     triggers:
1646       - timed: '{schedule}'
1647
1648     builders:
1649       - lf-infra-pre-build
1650       - integration-stack-4-type:
1651           openstack-cloud: '{openstack-cloud}'
1652           openstack-heat-template: '{openstack-heat-template}'
1653           openstack-heat-template-dir: '{openstack-heat-template-dir}'
1654       - integration-install-robotframework
1655       - inject:
1656           properties-file: 'env.properties'
1657       - integration-get-slave-addresses
1658       - inject:
1659           properties-file: 'slave_addresses.txt'
1660       - integration-detect-variables
1661       - integration-install-common-functions
1662       - integration-deploy-controller-run-test
1663       - integration-deploy-openstack-run-test
1664       - integration-cleanup-tmp
1665
1666     publishers:
1667       - email-notification:
1668           email-recipients: '{email-recipients}'
1669           email-prefix: '[{project}]'
1670       - integration-csit-collect-netvirt-logs
1671       - integration-csit-publish:
1672           robot_other_files:
1673             - tempest_results.html
1674           robot-pass-threshold: 100.0
1675           robot-unstable-threshold: 0.0
1676       - lf-stack-delete:
1677           openstack-cloud: '{openstack-cloud}'
1678       - lf-infra-publish
1679
1680 - job-template:
1681     # yamllint disable-line rule:line-length
1682     name: '{prefix}{project}-csit-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-openstack-{openstack}-{functionality}-{stream}'
1683     id: inttest-csit-openstack
1684     <<: *inttest_csit_common
1685     # yamllint disable-line rule:key-duplicates
1686     <<: *inttest_csit_openstack
1687
1688 - job-template:
1689     # yamllint disable-line rule:line-length
1690     name: '{prefix}{project}-csit-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-openstack-{openstack}-{functionality}-{stream}'
1691     id: inttest-csit-openstack-custom
1692     <<: *inttest_csit_common
1693     # yamllint disable-line rule:key-duplicates
1694     <<: *inttest_csit_openstack
1695
1696     parameters:
1697       - integration-csit-parameters:
1698           archive-artifacts: '{archive-artifacts}'
1699           branch: '{branch}'
1700           os-cloud: '{os-cloud}'
1701           # CSIT
1702           bundle-url: '{bundle-url}'
1703           repo-url: '{repo-url}'
1704           robot-options: '{robot-options}'
1705           # Controller
1706           controller-scope: ''
1707           debug-map: '{debug-map}'
1708           install-features: '{install-features}'
1709           use-features-boot: '{use-features-boot}'
1710           elasticsearch-attribute: '{elasticsearch-attribute}'
1711       - integration-stack-4-type:
1712           vm_0_count: '{odl_system_count}'
1713           vm_0_flavor: '{odl_system_flavor}'
1714           vm_0_image: '{odl_system_image}'
1715           vm_1_count: '{openstack_system_count}'
1716           vm_1_flavor: '{openstack_system_flavor}'
1717           vm_1_image: '{openstack_system_image}'
1718           vm_2_count: '{openstack_system2_count}'
1719           vm_2_flavor: '{openstack_system2_flavor}'
1720           vm_2_image: '{openstack_system2_image}'
1721           vm_3_count: '{tools_system_count}'
1722           vm_3_flavor: '{tools_system_flavor}'
1723           vm_3_image: '{tools_system_image}'
1724       - integration-distribution-branch:
1725           branch: '{branch}'
1726       - integration-distribution-stream:
1727           stream: '{stream}'
1728       - integration-script-plan:
1729           script-plan: '{project}.txt'
1730       - integration-config-plan:
1731           config-plan: '{project}.txt'
1732       - integration-test-plan:
1733           test-plan: '{testplan}'
1734       - integration-test-suites:
1735           test-suites: '{test-suites}'
1736       - integration-patch-refspec:
1737           branch: 'master'
1738       - integration-jdk-version:
1739           jdkversion: '{jre}'
1740       - distribution-karaf-version:
1741           karaf-version: '{karaf-version}'
1742       - string:
1743           name: OPENSTACK_BRANCH
1744           default: '{openstack-branch}'
1745           description: 'Openstack version to use with devstack'
1746       - string:
1747           name: DEVSTACK_HASH
1748           default: '{devstack-hash}'
1749           description: 'devstack hash to checkout'
1750       - string:
1751           name: ODL_ML2_DRIVER_REPO
1752           default: '{odl-ml2-driver-repo}'
1753           description: 'URL to fetch networking-odl driver'
1754       - string:
1755           name: ODL_ML2_BRANCH
1756           default: '{odl-ml2-branch}'
1757           description: 'Version of networking-odl to checkout from the repo'
1758       - string:
1759           name: ODL_ML2_DRIVER_VERSION
1760           default: '{odl-ml2-driver-version}'
1761           description: 'Mode of networking-odl (v1 or v2)'
1762       - string:
1763           name: ODL_ML2_PORT_BINDING
1764           default: '{odl-ml2-port-binding}'
1765           description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
1766           network-topology)'
1767       - string:
1768           name: ENABLE_GRE_TYPE_DRIVERS
1769           default: '{enable-gre-type-driver}'
1770           description: 'Enable gre tunnel'
1771       - string:
1772           name: DEVSTACK_KUBERNETES_PLUGIN_REPO
1773           default: '{devstack-kubernetes-plugin-repo}'
1774           description: 'URL to fetch kubernetes devstack plugin'
1775       - string:
1776           name: DEVSTACK_LBAAS_PLUGIN_REPO
1777           default: '{devstack-lbaas-plugin-repo}'
1778           description: 'URL to fetch neutron-lbaas devstack plugin'
1779       - string:
1780           name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
1781           default: '{devstack-networking-sfc-plugin-repo}'
1782           description: 'URL to fetch neutron-lbaas devstack plugin'
1783       - string:
1784           name: IPSEC_VXLAN_TUNNELS_ENABLED
1785           default: '{ipsec-vxlan-tunnels-enabled}'
1786           description: 'Enable ipsec over vxlan support for all controllers and computes'
1787       - string:
1788           name: PUBLIC_BRIDGE
1789           default: '{public-bridge}'
1790           description: 'Specifies public bridge for provider and external networking'
1791       - string:
1792           name: ENABLE_HAPROXY_FOR_NEUTRON
1793           default: '{enable-haproxy}'
1794           description: 'Enable HAProxy for using neutron interface as HA'
1795       - string:
1796           name: ENABLE_OS_SERVICES
1797           default: '{enable-openstack-services}'
1798           description: 'comma seperated list of services to enable'
1799       - string:
1800           name: ENABLE_OS_COMPUTE_SERVICES
1801           default: '{enable-openstack-compute-services}'
1802           description: 'comma separated list of services to enable on compute nodes'
1803       - string:
1804           name: ENABLE_OS_NETWORK_SERVICES
1805           default: '{enable-openstack-network-services}'
1806           description: 'comma seperated list of network services to enable'
1807       - string:
1808           name: ENABLE_OS_PLUGINS
1809           default: '{enable-openstack-plugins}'
1810           description: 'comma seperated list of plugins to enable'
1811       - string:
1812           name: DISABLE_OS_SERVICES
1813           default: '{disable-openstack-services}'
1814           description: 'comma seperated list of services to enable'
1815       - string:
1816           name: TENANT_NETWORK_TYPE
1817           default: '{tenant-network-type}'
1818           description: 'Tenant Network Type supported by the implementation'
1819       - string:
1820           name: SECURITY_GROUP_MODE
1821           default: '{security-group-mode}'
1822           description: 'Security Group Mode to be used in netvirt aclservice config'
1823       - string:
1824           name: ENABLE_ITM_DIRECT_TUNNELS
1825           default: '{enable-itm-direct-tunnels}'
1826           description: 'Tunnel Configuration mode to be used in genius ifm config'
1827       - string:
1828           name: PUBLIC_PHYSICAL_NETWORK
1829           default: '{public-physical-network}'
1830           description: 'provider physical network used for flat/vlan networks'
1831       - string:
1832           name: ENABLE_NETWORKING_L2GW
1833           default: '{enable-networking-l2gw}'
1834           description: 'Enable networking L2gw'
1835       - string:
1836           name: NETWORKING_L2GW_DRIVER
1837           default: '{networking-l2gw-repo}'
1838           description: 'URL to fetch networking-l2gw driver'
1839       - string:
1840           name: CREATE_INITIAL_NETWORKS
1841           default: '{create-initial-networks}'
1842           description: 'Toggles the option of letting devstack create initial networks (True/False)'
1843       - string:
1844           name: LBAAS_SERVICE_PROVIDER
1845           default: '{lbaas-service-provider}'
1846           description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
1847           neutron-lbaas'
1848       - string:
1849           name: ODL_SFC_DRIVER
1850           default: '{odl-sfc-driver}'
1851           description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
1852       - string:
1853           name: ODL_SNAT_MODE
1854           default: '{odl-snat-mode}'
1855           description: 'The SNAT mode to be configured - options are conntrack/controller.'
1856       - string:
1857           name: OVS_INSTALL
1858           default: '{ovs-install}'
1859           description: 'Install a custom OVS. It can be an OVS version to build (like v2.9.2 or v2.6.1-nsh) or a yum
1860           repo url to pull from.'
1861
1862 # Template: {project}-patch-test-{stream}
1863 # Goal: Build a patch and run project specific system test on a distribution containing the change
1864 # Operation: This job template builds a patch, creates a distribution containing the patch, and
1865 # triggers the project system test defined in {csit-list} when gerrit receives test-{project} keyword
1866
1867 - job-template:
1868     name: '{prefix}{project}-patch-test-{feature}-{stream}'
1869     id: inttest-patch-test
1870     <<: *inttest_csit_common
1871
1872     build-timeout: 720
1873
1874     parameters:
1875       - opendaylight-infra-parameters:
1876           os-cloud: '{os-cloud}'
1877           project: '{project}'
1878           branch: '{branch}'
1879           refspec: 'refs/heads/{branch}'
1880           artifacts: '{archive-artifacts}'
1881       - integration-distribution-branch:
1882           branch: '{branch}'
1883       - distribution-karaf-version:
1884           karaf-version: '{karaf-version}'
1885       - integration-distribution-git-url:
1886           git-url: '{git-url}'
1887       - string:
1888           name: feature
1889           default: 'all'
1890           description: 'Specific feature test for patch'
1891       - maven-exec:
1892           maven-version: mvn35
1893
1894     scm:
1895       - integration-gerrit-scm:
1896           basedir: '{project}'
1897           refspec: '$GERRIT_REFSPEC'
1898           branch: '{branch}'
1899       - integration-distribution-scm:
1900           branch: '{branch}'
1901
1902     triggers:
1903       - gerrit:
1904           server-name: '{gerrit-server-name}'
1905           trigger-on:
1906             - comment-added-contains-event:
1907                 comment-contains-value: 'test-{project}-all'
1908             - comment-added-contains-event:
1909                 comment-contains-value: 'test-{project}-{feature}'
1910           projects:
1911             - project-compare-type: 'ANT'
1912               project-pattern: '{project}'
1913               branches:
1914                 - branch-compare-type: 'ANT'
1915                   branch-pattern: '**/{branch}'
1916           skip-vote:
1917             successful: true
1918             failed: true
1919             unstable: true
1920             notbuilt: true
1921
1922     builders:
1923       - integration-rebase-gerrit-patch
1924       - wipe-org-opendaylight-repo
1925       - lf-update-java-alternatives:
1926           java-version: '{java-version}'
1927       - maven-target:
1928           maven-version: mvn35
1929           pom: '{project}/pom.xml'
1930           goals: |
1931               clean install dependency:tree
1932               -Pq
1933               -Dgitid.skip=false
1934               -Dmaven.gitcommitid.skip=false
1935               -DgenerateReports=false
1936               -Dstream={stream}
1937               {opendaylight-infra-mvn-opts}
1938           # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
1939           java-opts:
1940             - '-Xmx4096m -Dmaven.compile.fork=true'
1941           settings: integration-settings
1942           settings-type: cfp
1943           global-settings: global-settings
1944           global-settings-type: cfp
1945       - maven-target:
1946           maven-version: mvn35
1947           pom: distribution/pom.xml
1948           goals: |
1949               clean install dependency:tree
1950               -Pq
1951               -Dgitid.skip=false
1952               -Dmaven.gitcommitid.skip=false
1953               {opendaylight-infra-mvn-opts}
1954           # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
1955           java-opts:
1956             - '-Xmx1024m -Dmaven.compile.fork=true'
1957           settings: integration-settings
1958           settings-type: cfp
1959           global-settings: global-settings
1960           global-settings-type: cfp
1961       - integration-upload-distribution:
1962           dist-pom: distribution/pom.xml
1963       - trigger-builds:
1964           - project: '{csit-list}'
1965             block: true
1966             predefined-parameters: |
1967               BUNDLE_URL=$BUNDLE_URL
1968               GERRIT_BRANCH=$GERRIT_BRANCH
1969               GERRIT_PROJECT=$GERRIT_PROJECT
1970               GERRIT_REFSPEC=$GERRIT_REFSPEC
1971               KARAF_VERSION=$KARAF_VERSION
1972
1973     publishers:
1974       - email-notification:
1975           email-recipients: '{email-recipients}'
1976           email-prefix: '[{project}]'
1977
1978
1979 #####################
1980 # inttest-csit-apex #
1981 #####################
1982
1983 - inttest_csit_apex: &inttest_csit_apex
1984     name: inttest-csit-apex
1985
1986     #####################
1987     # Default variables #
1988     #####################
1989
1990     openstack-cloud: vex
1991     openstack-heat-template: csit-apex-3-instance-type.yaml
1992     openstack-heat-template-dir: openstack-hot
1993
1994     #####################
1995     # Job configuration #
1996     #####################
1997
1998     parameters:
1999       - integration-csit-parameters:
2000           archive-artifacts: '{archive-artifacts}'
2001           branch: '{branch}'
2002           os-cloud: '{os-cloud}'
2003           # CSIT
2004           bundle-url: '{bundle-url}'
2005           repo-url: '{repo-url}'
2006           robot-options: '{robot-options}'
2007           # Controller
2008           controller-scope: ''
2009           debug-map: '{debug-map}'
2010           install-features: '{install-features}'
2011           use-features-boot: '{use-features-boot}'
2012           elasticsearch-attribute: '{elasticsearch-attribute}'
2013       - integration-stack-3-type:
2014           vm_0_count: '{apex_controller_count}'
2015           vm_0_flavor: '{apex_controller_flavor}'
2016           vm_0_image: '{apex_controller_image}'
2017           vm_1_count: 1
2018           vm_1_flavor: '{apex_compute_0_flavor}'
2019           vm_1_image: '{apex_compute_0_image}'
2020           vm_2_count: 1
2021           vm_2_flavor: '{apex_compute_1_flavor}'
2022           vm_2_image: '{apex_compute_1_image}'
2023       - integration-distribution-branch:
2024           branch: '{branch}'
2025       - integration-distribution-stream:
2026           stream: '{stream}'
2027       - integration-test-plan:
2028           test-plan: '{project}-{functionality}.txt'
2029       - integration-test-suites:
2030           test-suites: '{test-suites}'
2031       - integration-patch-refspec:
2032           branch: 'master'
2033       - integration-jdk-version:
2034           jdkversion: '{jre}'
2035       - distribution-karaf-version:
2036           karaf-version: '{karaf-version}'
2037       - string:
2038           name: OPENSTACK_BRANCH
2039           default: '{openstack-branch}'
2040           description: 'Openstack version to use with devstack'
2041       - string:
2042           name: IPSEC_VXLAN_TUNNELS_ENABLED
2043           default: '{ipsec-vxlan-tunnels-enabled}'
2044           description: 'Enable ipsec over vxlan support for all controllers and computes'
2045       - string:
2046           name: PUBLIC_BRIDGE
2047           default: '{public-bridge}'
2048           description: 'Specifies public bridge for provider and external networking'
2049       - string:
2050           name: SECURITY_GROUP_MODE
2051           default: '{security-group-mode}'
2052           description: 'Security Group Mode to be used in netvirt aclservice config'
2053       - string:
2054           name: ENABLE_ITM_DIRECT_TUNNELS
2055           default: '{enable-itm-direct-tunnels}'
2056           description: 'Tunnel Configuration mode to be used in genius ifm config'
2057       - string:
2058           name: PUBLIC_PHYSICAL_NETWORK
2059           default: '{public-physical-network}'
2060           description: 'provider physical network used for flat/vlan networks'
2061       - string:
2062           name: ODL_SNAT_MODE
2063           default: '{odl-snat-mode}'
2064           description: 'The SNAT mode to be configured - options are conntrack/controller.'
2065
2066     scm:
2067       - integration-gerrit-scm:
2068           basedir: 'test'
2069           refspec: '$PATCHREFSPEC'
2070           branch: 'master'
2071
2072     triggers:
2073       - timed: '{schedule}'
2074
2075     builders:
2076       - lf-infra-pre-build
2077       - integration-stack-3-type:
2078           openstack-cloud: '{openstack-cloud}'
2079           openstack-heat-template: '{openstack-heat-template}'
2080           openstack-heat-template-dir: '{openstack-heat-template-dir}'
2081       - integration-install-robotframework
2082       - integration-detect-variables
2083       - integration-install-common-functions
2084       - inject:
2085           properties-file: 'env.properties'
2086       - integration-get-apex-addresses
2087       - inject:
2088           properties-file: 'slave_addresses.txt'
2089       - integration-apex-run-tests
2090       - integration-cleanup-tmp
2091
2092     publishers:
2093       - email-notification:
2094           email-recipients: '{email-recipients}'
2095           email-prefix: '[{project}]'
2096       - integration-csit-publish:
2097           robot_other_files:
2098             - tempest_results.html
2099           robot-pass-threshold: 100.0
2100           robot-unstable-threshold: 0.0
2101       - lf-stack-delete:
2102           openstack-cloud: '{openstack-cloud}'
2103       - lf-infra-publish
2104
2105 - job-template:
2106     # yamllint disable-line rule:line-length
2107     name: '{prefix}{project}-csit-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-apex-{openstack}-{functionality}-{stream}'
2108     id: inttest-csit-apex
2109     <<: *inttest_csit_common
2110     # yamllint disable-line rule:key-duplicates
2111     <<: *inttest_csit_apex
2112
2113 - job-template:
2114     # yamllint disable-line rule:line-length
2115     name: '{prefix}{project}-csit-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-apex-{openstack}-{functionality}-{stream}'
2116     id: inttest-csit-apex-custom
2117     <<: *inttest_csit_common
2118     # yamllint disable-line rule:key-duplicates
2119     <<: *inttest_csit_apex
2120
2121     parameters:
2122       - integration-csit-parameters:
2123           archive-artifacts: '{archive-artifacts}'
2124           branch: '{branch}'
2125           os-cloud: '{os-cloud}'
2126           # CSIT
2127           bundle-url: '{bundle-url}'
2128           repo-url: '{repo-url}'
2129           robot-options: '{robot-options}'
2130           # Controller
2131           controller-scope: ''
2132           debug-map: '{debug-map}'
2133           install-features: '{install-features}'
2134           use-features-boot: '{use-features-boot}'
2135           elasticsearch-attribute: '{elasticsearch-attribute}'
2136       - integration-stack-3-type:
2137           vm_0_count: '{apex_controller_count}'
2138           vm_0_flavor: '{apex_controller_flavor}'
2139           vm_0_image: '{apex_controller_image}'
2140           vm_1_count: 1
2141           vm_1_flavor: '{apex_compute_0_flavor}'
2142           vm_1_image: '{apex_compute_0_image}'
2143           vm_2_count: 1
2144           vm_2_flavor: '{apex_compute_1_flavor}'
2145           vm_2_image: '{apex_compute_1_image}'
2146       - integration-distribution-branch:
2147           branch: '{branch}'
2148       - integration-distribution-stream:
2149           stream: '{stream}'
2150       - integration-test-plan:
2151           test-plan: '{testplan}'
2152       - integration-test-suites:
2153           test-suites: '{test-suites}'
2154       - integration-patch-refspec:
2155           branch: 'master'
2156       - integration-jdk-version:
2157           jdkversion: '{jre}'
2158       - distribution-karaf-version:
2159           karaf-version: '{karaf-version}'
2160       - string:
2161           name: OPENSTACK_BRANCH
2162           default: '{openstack-branch}'
2163           description: 'Openstack version to use with devstack'
2164       - string:
2165           name: IPSEC_VXLAN_TUNNELS_ENABLED
2166           default: '{ipsec-vxlan-tunnels-enabled}'
2167           description: 'Enable ipsec over vxlan support for all controllers and computes'
2168       - string:
2169           name: PUBLIC_BRIDGE
2170           default: '{public-bridge}'
2171           description: 'Specifies public bridge for provider and external networking'
2172       - string:
2173           name: SECURITY_GROUP_MODE
2174           default: '{security-group-mode}'
2175           description: 'Security Group Mode to be used in netvirt aclservice config'
2176       - string:
2177           name: ENABLE_ITM_DIRECT_TUNNELS
2178           default: '{enable-itm-direct-tunnels}'
2179           description: 'Tunnel Configuration mode to be used in genius ifm config'
2180       - string:
2181           name: PUBLIC_PHYSICAL_NETWORK
2182           default: '{public-physical-network}'
2183           description: 'provider physical network used for flat/vlan networks'
2184       - string:
2185           name: ODL_SNAT_MODE
2186           default: '{odl-snat-mode}'
2187           description: 'The SNAT mode to be configured - options are conntrack/controller.'