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