Add job to automatically cleanup old images
[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-verify-1node-{functionality}
6 # {project}-csit-1node-{functionality}-{install}-{stream}
7 # {project}-csit-1node-periodic-{functionality}-{install}-{stream}
8 # {project}-csit-verify-3node-{functionality}
9 # {project}-csit-3node-{functionality}-{install}-{stream}
10 # {project}-csit-3node-periodic-{functionality}-{install}-{stream}
11 #
12 # Parameters:
13 # FIXME: Distinguish variables, macros and arguments, then update.
14 #
15 # opendaylight-infra-parameters: main project integration/test ($PROJECT)
16 # jre: (openjdk7 or openjdk8) Java runtime environment to use when launching ODL
17 # integration-distribution-branch: distribution branch ($DISTROBRANCH)
18 # integration-controller-bundleurl: distribution URL ($BUNDLEURL)
19 # integration-controller-scope: only or all features ($CONTROLLERSCOPE)
20 # integration-controller-features: features under test ($CONTROLLER FEATURES)
21 # integration-test-options: robot options ($TESTOPTIONS)
22 # integration-stream-test-plan: stream specific robot test plan ($STREAMTESTPLAN)
23 # integration-test-plan: fallback robot test plan ($TESTPLAN)
24 # integration-patch-refspec: test branch ($PATCHREFSPEC)
25
26
27 # New templates
28
29 - job-template:
30     name: '{project}-csit-verify-1node-{functionality}'
31     disabled: false
32
33     project-type: freestyle
34     node: centos7-robot-2c-2g
35
36     properties:
37       - opendaylight-infra-properties:
38           build-days-to-keep: '{build-days-to-keep}'
39
40     parameters:
41       - opendaylight-infra-parameters:
42           project: 'integration/test'
43           branch: '{branch}'
44           refspec: 'refs/heads/{branch}'
45           artifacts: '{archive-artifacts}'
46       - integration-distribution-branch:
47           branch: '{verify-branch}'
48       - integration-distribution-stream:
49           stream: '{verify-stream}'
50       - integration-bundleurl:
51           bundleurl: '{bundleurl}'
52       - integration-controller-scope:
53           controller-scope: 'only'
54       - integration-controller-features:
55           controller-features: '{install-features}'
56       - integration-test-options:
57           test-options: '{robot-options}'
58       - integration-stream-test-plan:
59           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
60       - integration-test-plan:
61           test-plan: '{project}-{functionality}.txt'
62       - integration-jdk-version:
63           jdkversion: '{verify-jdkversion}'
64
65     scm:
66       - integration-gerrit-scm:
67           basedir: 'test'
68           refspec: '$GERRIT_REFSPEC'
69           branch: 'master'
70
71     wrappers:
72       - opendaylight-infra-wrappers:
73           build-timeout: '{build-timeout}'
74
75     triggers:
76       - integration-trigger-patch-submitted:
77           server: '{server-name}'
78           project: 'integration/test'
79           branch: 'master'
80           files: 'csit/suites/{project}/**'
81
82     builders:
83       - integration-infra-stack:
84           stack-template: '{stack-template}'
85           vm_0_count: '1'
86           vm_0_flavor: '{odl_system_flavor}'
87           vm_0_image: '{odl_system_image}'
88           vm_1_count: '{tools_system_count}'
89           vm_1_flavor: '{tools_system_flavor}'
90           vm_1_image: '{tools_system_image}'
91       - integration-install-robotframework
92       - inject:
93           properties-file: 'env.properties'
94       - integration-get-slave-addresses
95       - inject:
96           properties-file: 'slave_addresses.txt'
97       - integration-get-bundle-vars
98       - inject:
99           properties-file: 'bundle_vars.txt'
100       - integration-deploy-controller-run-test
101       - integration-cleanup-tmp
102
103     publishers:
104       - integration-robot:
105           unstable-if: 0.0
106           pass-if: 100.0
107       - email-notification:
108           email-recipients: '{email-recipients}'
109           email-prefix: '[{project}]'
110       - integration-csit-archive-build
111       - opendaylight-infra-shiplogs:
112           maven-version: 'mvn33'
113
114 - job-template:
115     name: '{project}-csit-1node-{functionality}-{install}-{stream}'
116     disabled: false
117
118     project-type: freestyle
119     node: centos7-robot-2c-2g
120
121     properties:
122       - opendaylight-infra-properties:
123           build-days-to-keep: '{build-days-to-keep}'
124
125     parameters:
126       - opendaylight-infra-parameters:
127           project: 'integration/test'
128           branch: '{branch}'
129           refspec: 'refs/heads/{branch}'
130           artifacts: '{archive-artifacts}'
131       - integration-distribution-branch:
132           branch: '{branch}'
133       - integration-distribution-stream:
134           stream: '{stream}'
135       - integration-bundleurl:
136           bundleurl: '{bundleurl}'
137       - integration-controller-scope:
138           controller-scope: '{scope}'
139       - integration-controller-features:
140           controller-features: '{install-features}'
141       - integration-test-options:
142           test-options: '{robot-options}'
143       - integration-stream-test-plan:
144           stream-test-plan: '{project}-{functionality}-{stream}.txt'
145       - integration-test-plan:
146           test-plan: '{project}-{functionality}.txt'
147       - integration-patch-refspec:
148           branch: 'master'
149       - integration-jdk-version:
150           jdkversion: '{jre}'
151
152     scm:
153       - integration-gerrit-scm:
154           basedir: 'test'
155           refspec: '$PATCHREFSPEC'
156           branch: 'master'
157
158     wrappers:
159       - opendaylight-infra-wrappers:
160           build-timeout: '{build-timeout}'
161
162     builders:
163       - integration-infra-stack:
164           stack-template: '{stack-template}'
165           vm_0_count: '1'
166           vm_0_flavor: '{odl_system_flavor}'
167           vm_0_image: '{odl_system_image}'
168           vm_1_count: '{tools_system_count}'
169           vm_1_flavor: '{tools_system_flavor}'
170           vm_1_image: '{tools_system_image}'
171       - integration-install-robotframework
172       - inject:
173           properties-file: 'env.properties'
174       - integration-get-slave-addresses
175       - inject:
176           properties-file: 'slave_addresses.txt'
177       - integration-get-bundle-vars
178       - inject:
179           properties-file: 'bundle_vars.txt'
180       - integration-deploy-controller-run-test
181       - integration-cleanup-tmp
182
183     publishers:
184       - integration-robot:
185           unstable-if: 0.0
186           pass-if: 100.0
187       - email-notification:
188           email-recipients: '{email-recipients}'
189           email-prefix: '[{project}]'
190       - plot:
191           - title: '{01-plot-title}'
192             yaxis: '{01-plot-yaxis}'
193             group: '{01-plot-group}'
194             num-builds: '5400'
195             keep-records: true
196             style: line
197             use-description: false
198             # yamllint disable-line rule:line-length
199             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
200             series:
201               - file: '{01-plot-data-file}'
202                 inclusion-flag: 'off'
203                 display-table: true
204                 format: csv
205           - title: '{02-plot-title}'
206             yaxis: '{02-plot-yaxis}'
207             group: '{02-plot-group}'
208             num-builds: '5400'
209             keep-records: true
210             style: line
211             use-description: false
212             # yamllint disable-line rule:line-length
213             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
214             series:
215               - file: '{02-plot-data-file}'
216                 inclusion-flag: 'off'
217                 display-table: true
218                 format: csv
219       - integration-csit-archive-build
220       - opendaylight-infra-shiplogs:
221           maven-version: 'mvn33'
222
223 - job-template:
224     name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
225     disabled: false
226
227     project-type: freestyle
228     node: centos7-robot-2c-2g
229
230     properties:
231       - opendaylight-infra-properties:
232           build-days-to-keep: '{build-days-to-keep}'
233
234     parameters:
235       - opendaylight-infra-parameters:
236           project: 'integration/test'
237           branch: '{branch}'
238           refspec: 'refs/heads/{branch}'
239           artifacts: '{archive-artifacts}'
240       - integration-distribution-branch:
241           branch: '{branch}'
242       - integration-distribution-stream:
243           stream: '{stream}'
244       - integration-bundleurl:
245           bundleurl: '{bundleurl}'
246       - integration-controller-scope:
247           controller-scope: '{scope}'
248       - integration-controller-features:
249           controller-features: '{install-features}'
250       - integration-test-options:
251           test-options: '{robot-options}'
252       - integration-stream-test-plan:
253           stream-test-plan: '{project}-{functionality}-{stream}.txt'
254       - integration-test-plan:
255           test-plan: '{project}-{functionality}.txt'
256       - integration-patch-refspec:
257           branch: 'master'
258       - integration-jdk-version:
259           jdkversion: '{jre}'
260
261     scm:
262       - integration-gerrit-scm:
263           basedir: 'test'
264           refspec: '$PATCHREFSPEC'
265           branch: 'master'
266
267     wrappers:
268       - opendaylight-infra-wrappers:
269           build-timeout: '{build-timeout}'
270
271     builders:
272       - integration-infra-stack:
273           stack-template: '{stack-template}'
274           vm_0_count: '1'
275           vm_0_flavor: '{odl_system_flavor}'
276           vm_0_image: '{odl_system_image}'
277           vm_1_count: '{tools_system_count}'
278           vm_1_flavor: '{tools_system_flavor}'
279           vm_1_image: '{tools_system_image}'
280       - integration-install-robotframework
281       - inject:
282           properties-file: 'env.properties'
283       - integration-get-slave-addresses
284       - inject:
285           properties-file: 'slave_addresses.txt'
286       - integration-get-bundle-vars
287       - inject:
288           properties-file: 'bundle_vars.txt'
289       - integration-deploy-controller-run-test
290       - integration-cleanup-tmp
291
292     publishers:
293       - integration-robot:
294           unstable-if: 0.0
295           pass-if: 100.0
296       - email-notification:
297           email-recipients: '{email-recipients}'
298           email-prefix: '[{project}]'
299       - plot:
300           - title: '{01-plot-title}'
301             yaxis: '{01-plot-yaxis}'
302             group: '{01-plot-group}'
303             num-builds: '180'
304             keep-records: true
305             style: line
306             use-description: false
307             # yamllint disable-line rule:line-length
308             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
309             series:
310               - file: '{01-plot-data-file}'
311                 inclusion-flag: 'off'
312                 display-table: true
313                 format: csv
314           - title: '{02-plot-title}'
315             yaxis: '{02-plot-yaxis}'
316             group: '{02-plot-group}'
317             num-builds: '180'
318             keep-records: true
319             style: line
320             use-description: false
321             # yamllint disable-line rule:line-length
322             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
323             series:
324               - file: '{02-plot-data-file}'
325                 inclusion-flag: 'off'
326                 display-table: true
327                 format: csv
328           - title: '{03-plot-title}'
329             yaxis: '{03-plot-yaxis}'
330             group: '{03-plot-group}'
331             num-builds: '180'
332             keep-records: true
333             style: line
334             use-description: false
335             # yamllint disable-line rule:line-length
336             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{03-plot-data-file}-03-history.csv'
337             series:
338               - file: '{03-plot-data-file}'
339                 inclusion-flag: '{03-inclusion-flag}'
340                 exclude: '{03-exclude-value}'
341                 format: csv
342           - title: '{04-plot-title}'
343             yaxis: '{04-plot-yaxis}'
344             group: '{04-plot-group}'
345             num-builds: '180'
346             keep-records: true
347             style: line
348             use-description: false
349             # yamllint disable-line rule:line-length
350             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{04-plot-data-file}-04-history.csv'
351             series:
352               - file: '{04-plot-data-file}'
353                 inclusion-flag: '{04-inclusion-flag}'
354                 exclude: '{04-exclude-value}'
355                 format: csv
356           - title: '{05-plot-title}'
357             yaxis: '{05-plot-yaxis}'
358             group: '{05-plot-group}'
359             num-builds: '180'
360             keep-records: true
361             style: line
362             use-description: false
363             # yamllint disable-line rule:line-length
364             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{05-plot-data-file}-05-history.csv'
365             series:
366               - file: '{05-plot-data-file}'
367                 inclusion-flag: '{05-inclusion-flag}'
368                 exclude: '{05-exclude-value}'
369                 format: csv
370           - title: '{06-plot-title}'
371             yaxis: '{06-plot-yaxis}'
372             group: '{06-plot-group}'
373             num-builds: '180'
374             keep-records: true
375             style: line
376             use-description: false
377             # yamllint disable-line rule:line-length
378             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{06-plot-data-file}-06-history.csv'
379             series:
380               - file: '{06-plot-data-file}'
381                 inclusion-flag: '{06-inclusion-flag}'
382                 exclude: '{06-exclude-value}'
383                 format: csv
384           - title: '{07-plot-title}'
385             yaxis: '{07-plot-yaxis}'
386             group: '{07-plot-group}'
387             num-builds: '180'
388             keep-records: true
389             style: line
390             use-description: false
391             # yamllint disable-line rule:line-length
392             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{07-plot-data-file}-07-history.csv'
393             series:
394               - file: '{07-plot-data-file}'
395                 inclusion-flag: '{07-inclusion-flag}'
396                 exclude: '{07-exclude-value}'
397                 format: csv
398           - title: '{08-plot-title}'
399             yaxis: '{08-plot-yaxis}'
400             group: '{08-plot-group}'
401             num-builds: '180'
402             keep-records: true
403             style: line
404             use-description: false
405             # yamllint disable-line rule:line-length
406             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{08-plot-data-file}-08-history.csv'
407             series:
408               - file: '{08-plot-data-file}'
409                 inclusion-flag: '{08-inclusion-flag}'
410                 exclude: '{08-exclude-value}'
411                 format: csv
412           - title: '{09-plot-title}'
413             yaxis: '{09-plot-yaxis}'
414             group: '{09-plot-group}'
415             num-builds: '180'
416             keep-records: true
417             style: line
418             use-description: false
419             # yamllint disable-line rule:line-length
420             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{09-plot-data-file}-09-history.csv'
421             series:
422               - file: '{09-plot-data-file}'
423                 inclusion-flag: '{09-inclusion-flag}'
424                 exclude: '{09-exclude-value}'
425                 format: csv
426           - title: '{10-plot-title}'
427             yaxis: '{10-plot-yaxis}'
428             group: '{10-plot-group}'
429             num-builds: '180'
430             keep-records: true
431             style: line
432             use-description: false
433             # yamllint disable-line rule:line-length
434             csv-file-name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}-{10-plot-data-file}-10-history.csv'
435             series:
436               - file: '{10-plot-data-file}'
437                 inclusion-flag: '{10-inclusion-flag}'
438                 exclude: '{10-exclude-value}'
439                 format: csv
440       - integration-csit-archive-build
441       - opendaylight-infra-shiplogs:
442           maven-version: 'mvn33'
443
444 - job-template:
445     name: '{project}-csit-verify-3node-{functionality}'
446     disabled: false
447
448     project-type: freestyle
449     node: centos7-robot-2c-2g
450
451     properties:
452       - opendaylight-infra-properties:
453           build-days-to-keep: '{build-days-to-keep}'
454
455     parameters:
456       - opendaylight-infra-parameters:
457           project: 'integration/test'
458           branch: '{branch}'
459           refspec: 'refs/heads/{branch}'
460           artifacts: '{archive-artifacts}'
461       - integration-distribution-branch:
462           branch: '{verify-branch}'
463       - integration-distribution-stream:
464           stream: '{verify-stream}'
465       - integration-bundleurl:
466           bundleurl: '{bundleurl}'
467       - integration-controller-scope:
468           controller-scope: 'only'
469       - integration-controller-features:
470           controller-features: 'odl-jolokia,{install-features}'
471       - integration-test-options:
472           test-options: '{robot-options}'
473       - integration-stream-test-plan:
474           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
475       - integration-test-plan:
476           test-plan: '{project}-{functionality}.txt'
477       - integration-jdk-version:
478           jdkversion: '{verify-jdkversion}'
479
480     scm:
481       - integration-gerrit-scm:
482           basedir: 'test'
483           refspec: '$GERRIT_REFSPEC'
484           branch: 'master'
485
486     wrappers:
487       - opendaylight-infra-wrappers:
488           build-timeout: '{build-timeout}'
489
490     triggers:
491       - integration-trigger-patch-submitted:
492           server: '{server-name}'
493           project: 'integration/test'
494           branch: 'master'
495           files: 'csit/suites/{project}/**'
496
497     builders:
498       - integration-infra-stack:
499           stack-template: '{stack-template}'
500           vm_0_count: '3'
501           vm_0_flavor: '{odl_system_flavor}'
502           vm_0_image: '{odl_system_image}'
503           vm_1_count: '{tools_system_count}'
504           vm_1_flavor: '{tools_system_flavor}'
505           vm_1_image: '{tools_system_image}'
506       - integration-install-robotframework
507       - inject:
508           properties-file: 'env.properties'
509       - integration-get-slave-addresses
510       - inject:
511           properties-file: 'slave_addresses.txt'
512       - integration-get-bundle-vars
513       - inject:
514           properties-file: 'bundle_vars.txt'
515       - integration-configure-clustering
516       - integration-start-cluster-run-test
517       - integration-cleanup-tmp
518
519     publishers:
520       - integration-robot:
521           unstable-if: 0.0
522           pass-if: 100.0
523       - email-notification:
524           email-recipients: '{email-recipients}'
525           email-prefix: '[{project}]'
526       - integration-csit-archive-build
527       - opendaylight-infra-shiplogs:
528           maven-version: 'mvn33'
529
530 - job-template:
531     name: '{project}-csit-3node-{functionality}-{install}-{stream}'
532     disabled: false
533
534     project-type: freestyle
535     node: centos7-robot-2c-2g
536
537     properties:
538       - opendaylight-infra-properties:
539           build-days-to-keep: '{build-days-to-keep}'
540
541     parameters:
542       - opendaylight-infra-parameters:
543           project: 'integration/test'
544           branch: '{branch}'
545           refspec: 'refs/heads/{branch}'
546           artifacts: '{archive-artifacts}'
547       - integration-distribution-branch:
548           branch: '{branch}'
549       - integration-distribution-stream:
550           stream: '{stream}'
551       - integration-bundleurl:
552           bundleurl: '{bundleurl}'
553       - integration-controller-scope:
554           controller-scope: '{scope}'
555       - integration-controller-features:
556           controller-features: 'odl-jolokia,{install-features}'
557       - integration-test-options:
558           test-options: '{robot-options}'
559       - integration-stream-test-plan:
560           stream-test-plan: '{project}-{functionality}-{stream}.txt'
561       - integration-test-plan:
562           test-plan: '{project}-{functionality}.txt'
563       - integration-patch-refspec:
564           branch: 'master'
565       - integration-jdk-version:
566           jdkversion: '{jre}'
567
568     scm:
569       - integration-gerrit-scm:
570           basedir: 'test'
571           refspec: '$PATCHREFSPEC'
572           branch: 'master'
573
574     wrappers:
575       - opendaylight-infra-wrappers:
576           build-timeout: '{build-timeout}'
577
578     builders:
579       - integration-infra-stack:
580           stack-template: '{stack-template}'
581           vm_0_count: '3'
582           vm_0_flavor: '{odl_system_flavor}'
583           vm_0_image: '{odl_system_image}'
584           vm_1_count: '{tools_system_count}'
585           vm_1_flavor: '{tools_system_flavor}'
586           vm_1_image: '{tools_system_image}'
587       - integration-install-robotframework
588       - inject:
589           properties-file: 'env.properties'
590       - integration-get-slave-addresses
591       - inject:
592           properties-file: 'slave_addresses.txt'
593       - integration-get-bundle-vars
594       - inject:
595           properties-file: 'bundle_vars.txt'
596       - integration-configure-clustering
597       - integration-start-cluster-run-test
598       - integration-cleanup-tmp
599
600     publishers:
601       - integration-robot:
602           unstable-if: 0.0
603           pass-if: 100.0
604       - email-notification:
605           email-recipients: '{email-recipients}'
606           email-prefix: '[{project}]'
607       - plot:
608           - title: '{01-plot-title}'
609             yaxis: '{01-plot-yaxis}'
610             group: '{01-plot-group}'
611             num-builds: '5400'
612             keep-records: true
613             style: line
614             use-description: false
615             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
616             series:
617               - file: '{01-plot-data-file}'
618                 inclusion-flag: 'off'
619                 display-table: true
620                 format: csv
621           - title: '{02-plot-title}'
622             yaxis: '{02-plot-yaxis}'
623             group: '{02-plot-group}'
624             num-builds: '5400'
625             keep-records: true
626             style: line
627             use-description: false
628             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
629             series:
630               - file: '{02-plot-data-file}'
631                 inclusion-flag: 'off'
632                 display-table: true
633                 format: csv
634       - integration-csit-archive-build
635       - opendaylight-infra-shiplogs:
636           maven-version: 'mvn33'
637
638 - job-template:
639     name: '{project}-csit-3node-docker-{functionality}-{install}-{stream}'
640     disabled: false
641
642     project-type: freestyle
643     node: centos7-robot-2c-2g
644
645     properties:
646       - opendaylight-infra-properties:
647           build-days-to-keep: '{build-days-to-keep}'
648
649     parameters:
650       - opendaylight-infra-parameters:
651           project: 'integration/test'
652           branch: '{branch}'
653           refspec: 'refs/heads/{branch}'
654           artifacts: '{archive-artifacts}'
655       - integration-distribution-branch:
656           branch: '{branch}'
657       - integration-distribution-stream:
658           stream: '{stream}'
659       - integration-bundleurl:
660           bundleurl: '{bundleurl}'
661       - integration-controller-scope:
662           controller-scope: '{scope}'
663       - integration-controller-features:
664           controller-features: 'odl-jolokia,{install-features}'
665       - integration-test-options:
666           test-options: '{robot-options}'
667       - integration-stream-test-plan:
668           stream-test-plan: '{project}-{functionality}-{stream}.txt'
669       - integration-test-plan:
670           test-plan: '{project}-{functionality}.txt'
671       - integration-patch-refspec:
672           branch: 'master'
673       - integration-jdk-version:
674           jdkversion: '{jre}'
675
676     scm:
677       - integration-gerrit-scm:
678           basedir: 'test'
679           refspec: '$PATCHREFSPEC'
680           branch: 'master'
681
682     wrappers:
683       - opendaylight-infra-wrappers:
684           build-timeout: '{build-timeout}'
685
686     builders:
687       - integration-infra-stack:
688           stack-template: '{stack-template}'
689           vm_0_count: '3'
690           vm_0_flavor: '{odl_system_flavor}'
691           vm_0_image: '{odl_system_image}'
692           vm_1_count: '{docker_system_count}'
693           vm_1_flavor: '{docker_system_flavor}'
694           vm_1_image: '{docker_system_image}'
695       - integration-install-robotframework
696       - inject:
697           properties-file: 'env.properties'
698       - integration-get-slave-addresses
699       - inject:
700           properties-file: 'slave_addresses.txt'
701       - integration-get-bundle-vars
702       - inject:
703           properties-file: 'bundle_vars.txt'
704       - integration-configure-clustering
705       - integration-start-cluster-run-test
706       - integration-cleanup-tmp
707
708     publishers:
709       - integration-robot:
710           unstable-if: 0.0
711           pass-if: 100.0
712       - email-notification:
713           email-recipients: '{email-recipients}'
714           email-prefix: '[{project}]'
715       - plot:
716           - title: '{01-plot-title}'
717             yaxis: '{01-plot-yaxis}'
718             group: '{01-plot-group}'
719             num-builds: '5400'
720             keep-records: true
721             style: line
722             use-description: false
723             # yamllint disable-line rule:line-length
724             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
725             series:
726               - file: '{01-plot-data-file}'
727                 inclusion-flag: 'off'
728                 display-table: true
729                 format: csv
730           - title: '{02-plot-title}'
731             yaxis: '{02-plot-yaxis}'
732             group: '{02-plot-group}'
733             num-builds: '5400'
734             keep-records: true
735             style: line
736             use-description: false
737             # yamllint disable-line rule:line-length
738             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
739             series:
740               - file: '{02-plot-data-file}'
741                 inclusion-flag: 'off'
742                 display-table: true
743                 format: csv
744       - integration-csit-archive-build
745       - opendaylight-infra-shiplogs:
746           maven-version: 'mvn33'
747
748 - job-template:
749     name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}'
750     disabled: false
751
752     project-type: freestyle
753     node: centos7-robot-2c-2g
754
755     properties:
756       - opendaylight-infra-properties:
757           build-days-to-keep: '{build-days-to-keep}'
758
759     parameters:
760       - opendaylight-infra-parameters:
761           project: 'integration/test'
762           branch: '{branch}'
763           refspec: 'refs/heads/{branch}'
764           artifacts: '{archive-artifacts}'
765       - integration-distribution-branch:
766           branch: '{branch}'
767       - integration-distribution-stream:
768           stream: '{stream}'
769       - integration-bundleurl:
770           bundleurl: '{bundleurl}'
771       - integration-controller-scope:
772           controller-scope: '{scope}'
773       - integration-controller-features:
774           controller-features: 'odl-jolokia,{install-features}'
775       - integration-test-options:
776           test-options: '{robot-options}'
777       - integration-stream-test-plan:
778           stream-test-plan: '{project}-{functionality}-{stream}.txt'
779       - integration-test-plan:
780           test-plan: '{project}-{functionality}.txt'
781       - integration-patch-refspec:
782           branch: 'master'
783       - integration-jdk-version:
784           jdkversion: '{jre}'
785
786     scm:
787       - integration-gerrit-scm:
788           basedir: 'test'
789           refspec: '$PATCHREFSPEC'
790           branch: 'master'
791
792     wrappers:
793       - opendaylight-infra-wrappers:
794           build-timeout: '{build-timeout}'
795
796     builders:
797       - integration-infra-stack:
798           stack-template: '{stack-template}'
799           vm_0_count: '3'
800           vm_0_flavor: '{odl_system_flavor}'
801           vm_0_image: '{odl_system_image}'
802           vm_1_count: '{tools_system_count}'
803           vm_1_flavor: '{tools_system_flavor}'
804           vm_1_image: '{tools_system_image}'
805       - integration-install-robotframework
806       - inject:
807           properties-file: 'env.properties'
808       - integration-get-slave-addresses
809       - inject:
810           properties-file: 'slave_addresses.txt'
811       - integration-get-bundle-vars
812       - inject:
813           properties-file: 'bundle_vars.txt'
814       - integration-configure-clustering
815       - integration-start-cluster-run-test
816       - integration-cleanup-tmp
817
818     publishers:
819       - integration-robot:
820           unstable-if: 0.0
821           pass-if: 100.0
822       - email-notification:
823           email-recipients: '{email-recipients}'
824           email-prefix: '[{project}]'
825       - plot:
826           - title: '{01-plot-title}'
827             yaxis: '{01-plot-yaxis}'
828             group: '{01-plot-group}'
829             num-builds: '180'
830             keep-records: true
831             style: line
832             use-description: false
833             # yamllint disable-line rule:line-length
834             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
835             series:
836               - file: '{01-plot-data-file}'
837                 inclusion-flag: 'off'
838                 display-table: true
839                 format: csv
840           - title: '{02-plot-title}'
841             yaxis: '{02-plot-yaxis}'
842             group: '{02-plot-group}'
843             num-builds: '180'
844             keep-records: true
845             style: line
846             use-description: false
847             # yamllint disable-line rule:line-length
848             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
849             series:
850               - file: '{02-plot-data-file}'
851                 inclusion-flag: 'off'
852                 display-table: true
853                 format: csv
854           - title: '{03-plot-title}'
855             yaxis: '{03-plot-yaxis}'
856             group: '{03-plot-group}'
857             num-builds: '180'
858             keep-records: true
859             style: line
860             use-description: false
861             # yamllint disable-line rule:line-length
862             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{03-plot-data-file}-03-history.csv'
863             series:
864               - file: '{03-plot-data-file}'
865                 inclusion-flag: '{03-inclusion-flag}'
866                 exclude: '{03-exclude-value}'
867                 format: csv
868           - title: '{04-plot-title}'
869             yaxis: '{04-plot-yaxis}'
870             group: '{04-plot-group}'
871             num-builds: '180'
872             keep-records: true
873             style: line
874             use-description: false
875             # yamllint disable-line rule:line-length
876             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{04-plot-data-file}-04-history.csv'
877             series:
878               - file: '{04-plot-data-file}'
879                 inclusion-flag: '{04-inclusion-flag}'
880                 exclude: '{04-exclude-value}'
881                 format: csv
882           - title: '{05-plot-title}'
883             yaxis: '{05-plot-yaxis}'
884             group: '{05-plot-group}'
885             num-builds: '180'
886             keep-records: true
887             style: line
888             use-description: false
889             # yamllint disable-line rule:line-length
890             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{05-plot-data-file}-05-history.csv'
891             series:
892               - file: '{05-plot-data-file}'
893                 inclusion-flag: '{05-inclusion-flag}'
894                 exclude: '{05-exclude-value}'
895                 format: csv
896           - title: '{06-plot-title}'
897             yaxis: '{06-plot-yaxis}'
898             group: '{06-plot-group}'
899             num-builds: '180'
900             keep-records: true
901             style: line
902             use-description: false
903             # yamllint disable-line rule:line-length
904             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{06-plot-data-file}-06-history.csv'
905             series:
906               - file: '{06-plot-data-file}'
907                 inclusion-flag: '{06-inclusion-flag}'
908                 exclude: '{06-exclude-value}'
909                 format: csv
910           - title: '{07-plot-title}'
911             yaxis: '{07-plot-yaxis}'
912             group: '{07-plot-group}'
913             num-builds: '180'
914             keep-records: true
915             style: line
916             use-description: false
917             # yamllint disable-line rule:line-length
918             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{07-plot-data-file}-07-history.csv'
919             series:
920               - file: '{07-plot-data-file}'
921                 inclusion-flag: '{07-inclusion-flag}'
922                 exclude: '{07-exclude-value}'
923                 format: csv
924           - title: '{08-plot-title}'
925             yaxis: '{08-plot-yaxis}'
926             group: '{08-plot-group}'
927             num-builds: '180'
928             keep-records: true
929             style: line
930             use-description: false
931             # yamllint disable-line rule:line-length
932             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{08-plot-data-file}-08-history.csv'
933             series:
934               - file: '{08-plot-data-file}'
935                 inclusion-flag: '{08-inclusion-flag}'
936                 exclude: '{08-exclude-value}'
937                 format: csv
938           - title: '{09-plot-title}'
939             yaxis: '{09-plot-yaxis}'
940             group: '{09-plot-group}'
941             num-builds: '180'
942             keep-records: true
943             style: line
944             use-description: false
945             # yamllint disable-line rule:line-length
946             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{09-plot-data-file}-09-history.csv'
947             series:
948               - file: '{09-plot-data-file}'
949                 inclusion-flag: '{09-inclusion-flag}'
950                 exclude: '{09-exclude-value}'
951                 format: csv
952           - title: '{10-plot-title}'
953             yaxis: '{10-plot-yaxis}'
954             group: '{10-plot-group}'
955             num-builds: '180'
956             keep-records: true
957             style: line
958             use-description: false
959             # yamllint disable-line rule:line-length
960             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{10-plot-data-file}-10-history.csv'
961             series:
962               - file: '{10-plot-data-file}'
963                 inclusion-flag: '{10-inclusion-flag}'
964                 exclude: '{10-exclude-value}'
965                 format: csv
966       - integration-csit-archive-build
967       - opendaylight-infra-shiplogs:
968           maven-version: 'mvn33'
969
970 - job-template:
971     name: '{project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}'
972     disabled: false
973
974     project-type: freestyle
975     node: centos7-robot-2c-2g
976     concurrent: true
977
978     properties:
979       - opendaylight-infra-properties:
980           build-days-to-keep: '{build-days-to-keep}'
981
982     parameters:
983       - opendaylight-infra-parameters:
984           project: 'integration/test'
985           branch: '{branch}'
986           refspec: 'refs/heads/{branch}'
987           artifacts: '{archive-artifacts}'
988       - integration-distribution-branch:
989           branch: '{branch}'
990       - integration-distribution-stream:
991           stream: '{stream}'
992       - integration-bundleurl:
993           bundleurl: '{bundleurl}'
994       - integration-controller-features:
995           controller-features: '{install-features}'
996       - integration-test-options:
997           test-options: '{robot-options}'
998       - integration-test-plan:
999           test-plan: '{testplan}'
1000       - integration-patch-refspec:
1001           branch: 'master'
1002       - integration-jdk-version:
1003           jdkversion: '{jre}'
1004       - string:
1005           name: OPENSTACK_BRANCH
1006           default: '{openstack-branch}'
1007           description: 'Openstack version to use with devstack'
1008       - string:
1009           name: ODL_ML2_DRIVER_REPO
1010           default: '{odl-ml2-driver-repo}'
1011           description: 'URL to fetch networking-odl driver'
1012       - string:
1013           name: ODL_ML2_BRANCH
1014           default: '{odl-ml2-branch}'
1015           description: 'Version of networking-odl to checkout from the repo'
1016       - string:
1017           name: ODL_ML2_DRIVER_VERSION
1018           default: '{odl-ml2-driver-version}'
1019           description: 'Mode of networking-odl (v1 or v2)'
1020       - string:
1021           name: ODL_ENABLE_L3_FWD
1022           default: '{odl-enable-l3}'
1023           description: 'Enable L3 FWD in ODL for createing br-ex'
1024       - string:
1025           name: PUBLIC_BRIDGE
1026           default: '{public-bridge}'
1027           description: 'Specifies public bridge for provider and external networking'
1028       - string:
1029           name: ENABLE_HAPROXY_FOR_NEUTRON
1030           default: '{enable-haproxy}'
1031           description: 'Enable HAProxy for using neutron interface as HA'
1032       - string:
1033           name: ENABLE_OS_SERVICES
1034           default: '{enable-openstack-services}'
1035           description: 'comma seperated list of services to enable'
1036       - string:
1037           name: DISABLE_OS_SERVICES
1038           default: '{disable-openstack-services}'
1039           description: 'comma seperated list of services to enable'
1040       - string:
1041           name: TENANT_NETWORK_TYPE
1042           default: '{tenant-network-type}'
1043           description: 'Tenant Network Type supported by the implementation'
1044       - string:
1045           name: SECURITY_GROUP_MODE
1046           default: '{security-group-mode}'
1047           description: 'Security Group Mode to be used in netvirt aclservice config'
1048       - string:
1049           name: PUBLIC_PHYSICAL_NETWORK
1050           default: '{public-physical-network}'
1051           description: 'provider physical network used for flat/vlan networks'
1052       - string:
1053           name: ENABLE_NETWORKING_L2GW
1054           default: '{enable-networking-l2gw}'
1055           description: 'Enable networking L2gw'
1056       - string:
1057           name: NETWORKING_L2GW_DRIVER
1058           default: '{networking-l2gw-repo}'
1059           description: 'URL to fetch networking-l2gw driver'
1060       - string:
1061           name: DISABLE_ODL_L3_PLUGIN
1062           default: '{disable-odl-l3-service-plugin}'
1063           description: 'Disable odl l3 service plugin'
1064     scm:
1065       - integration-gerrit-scm:
1066           basedir: 'test'
1067           refspec: '$PATCHREFSPEC'
1068           branch: 'master'
1069
1070     wrappers:
1071       - opendaylight-infra-wrappers:
1072           build-timeout: '{build-timeout}'
1073
1074     triggers:
1075       - timed: '{schedule}'
1076
1077     builders:
1078       - integration-infra-stack-3-type:
1079           vm_0_count: '{odl_system_count}'
1080           vm_0_flavor: '{odl_system_flavor}'
1081           vm_0_image: '{odl_system_image}'
1082           vm_1_count: '{openstack_system_count}'
1083           vm_1_flavor: '{openstack_system_flavor}'
1084           vm_1_image: '{openstack_system_image}'
1085           vm_2_count: '{tools_system_count}'
1086           vm_2_flavor: '{tools_system_flavor}'
1087           vm_2_image: '{tools_system_image}'
1088       - integration-install-robotframework
1089       - inject:
1090           properties-file: 'env.properties'
1091       - integration-get-slave-addresses
1092       - inject:
1093           properties-file: 'slave_addresses.txt'
1094       - integration-get-bundle-vars
1095       - inject:
1096           properties-file: 'bundle_vars.txt'
1097       - integration-deploy-controller-run-test
1098       - integration-deploy-openstack-run-test
1099       - integration-cleanup-tmp
1100
1101     publishers:
1102       - integration-robot-tempest:
1103           unstable-if: 0.0
1104           pass-if: 100.0
1105       - email-notification:
1106           email-recipients: '{email-recipients}'
1107           email-prefix: '[{project}]'
1108       - integration-csit-archive-build
1109       - opendaylight-infra-shiplogs:
1110           maven-version: 'mvn33'
1111
1112 - job-template:
1113     name: '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
1114     disabled: false
1115
1116     project-type: freestyle
1117     node: centos7-robot-2c-2g
1118     concurrent: true
1119
1120     properties:
1121       - opendaylight-infra-properties:
1122           build-days-to-keep: '{build-days-to-keep}'
1123
1124     parameters:
1125       - opendaylight-infra-parameters:
1126           project: 'integration/test'
1127           branch: '{branch}'
1128           refspec: 'refs/heads/{branch}'
1129           artifacts: '{archive-artifacts}'
1130       - integration-distribution-branch:
1131           branch: '{branch}'
1132       - integration-distribution-stream:
1133           stream: '{stream}'
1134       - integration-bundleurl:
1135           bundleurl: '{bundleurl}'
1136       - integration-controller-features:
1137           controller-features: '{install-features}'
1138       - integration-test-options:
1139           test-options: '{robot-options}'
1140       - integration-test-plan:
1141           test-plan: '{testplan}'
1142       - integration-patch-refspec:
1143           branch: 'master'
1144       - integration-jdk-version:
1145           jdkversion: '{jre}'
1146       - string:
1147           name: OPENSTACK_BRANCH
1148           default: '{openstack-branch}'
1149           description: 'Openstack version to use with devstack'
1150       - string:
1151           name: ODL_ML2_DRIVER_REPO
1152           default: '{odl-ml2-driver-repo}'
1153           description: 'URL to fetch networking-odl driver'
1154       - string:
1155           name: ODL_ML2_BRANCH
1156           default: '{odl-ml2-branch}'
1157           description: 'Version of networking-odl to checkout from the repo'
1158       - string:
1159           name: ODL_ML2_DRIVER_VERSION
1160           default: '{odl-ml2-driver-version}'
1161           description: 'Mode of networking-odl (v1 or v2)'
1162       - string:
1163           name: ODL_ENABLE_L3_FWD
1164           default: '{odl-enable-l3}'
1165           description: 'Enable L3 FWD in ODL for createing br-ex'
1166       - string:
1167           name: PUBLIC_BRIDGE
1168           default: '{public-bridge}'
1169           description: 'Specifies public bridge for provider and external networking'
1170       - string:
1171           name: ENABLE_HAPROXY_FOR_NEUTRON
1172           default: '{enable-haproxy}'
1173           description: 'Enable HAProxy for using neutron interface as HA'
1174       - string:
1175           name: ENABLE_OS_SERVICES
1176           default: '{enable-openstack-services}'
1177           description: 'comma seperated list of services to enable'
1178       - string:
1179           name: DISABLE_OS_SERVICES
1180           default: '{disable-openstack-services}'
1181           description: 'comma seperated list of services to enable'
1182       - string:
1183           name: TENANT_NETWORK_TYPE
1184           default: '{tenant-network-type}'
1185           description: 'Tenant Network Type supported by the implementation'
1186       - string:
1187           name: SECURITY_GROUP_MODE
1188           default: '{security-group-mode}'
1189           description: 'Security Group Mode to be used in netvirt aclservice config'
1190       - string:
1191           name: PUBLIC_PHYSICAL_NETWORK
1192           default: '{public-physical-network}'
1193           description: 'provider physical network used for flat/vlan networks'
1194       - string:
1195           name: ENABLE_NETWORKING_L2GW
1196           default: '{enable-networking-l2gw}'
1197           description: 'Enable networking L2gw'
1198       - string:
1199           name: NETWORKING_L2GW_DRIVER
1200           default: '{networking-l2gw-repo}'
1201           description: 'URL to fetch networking-l2gw driver'
1202       - string:
1203           name: DISABLE_ODL_L3_PLUGIN
1204           default: '{disable-odl-l3-service-plugin}'
1205           description: 'Disable odl l3 service plugin'
1206
1207     scm:
1208       - integration-gerrit-scm:
1209           basedir: 'test'
1210           refspec: '$PATCHREFSPEC'
1211           branch: 'master'
1212
1213     wrappers:
1214       - opendaylight-infra-wrappers:
1215           build-timeout: '{build-timeout}'
1216
1217     triggers:
1218       - timed: '{schedule}'
1219
1220     builders:
1221       - integration-infra-stack:
1222           stack-template: '{stack-template}'
1223           vm_0_count: '{odl_system_count}'
1224           vm_0_flavor: '{odl_system_flavor}'
1225           vm_0_image: '{odl_system_image}'
1226           vm_1_count: '{openstack_system_count}'
1227           vm_1_flavor: '{openstack_system_flavor}'
1228           vm_1_image: '{openstack_system_image}'
1229       - integration-install-robotframework
1230       - inject:
1231           properties-file: 'env.properties'
1232       - integration-get-slave-addresses
1233       - inject:
1234           properties-file: 'slave_addresses.txt'
1235       - integration-get-bundle-vars
1236       - inject:
1237           properties-file: 'bundle_vars.txt'
1238       - integration-deploy-controller-run-test
1239       - integration-deploy-openstack-run-test
1240       - integration-cleanup-tmp
1241
1242     publishers:
1243       - integration-robot-tempest:
1244           unstable-if: 0.0
1245           pass-if: 100.0
1246       - email-notification:
1247           email-recipients: '{email-recipients}'
1248           email-prefix: '[{project}]'
1249       - integration-csit-archive-build
1250       - opendaylight-infra-shiplogs:
1251           maven-version: 'mvn33'
1252
1253 # Template: {project}-patch-test-{stream}
1254 # Goal: Build a patch and run project specific system test on a distribution containing the change
1255 # Operation: This job template builds a patch, creates a distribution containing the patch, and
1256 # triggers the project system test defined in {csit-list} when gerrit receives test-{project} keyword
1257
1258 - job-template:
1259     name: '{project}-patch-test-{feature}-{stream}'
1260
1261     project-type: maven
1262     node: centos7-java-builder-2c-8g
1263     concurrent: true
1264     jdk: '{jdk}'
1265
1266     properties:
1267       - opendaylight-infra-properties:
1268           build-days-to-keep: '{build-days-to-keep}'
1269
1270     parameters:
1271       - opendaylight-infra-parameters:
1272           project: '{project}'
1273           branch: '{branch}'
1274           refspec: '$GERRIT_REFSPEC'
1275           artifacts: '{archive-artifacts}'
1276       - integration-distribution-branch:
1277           branch: '{branch}'
1278       - integration-distribution-git-url:
1279           git-url: '{git-url}'
1280       - string:
1281           name: feature
1282           default: 'all'
1283           description: 'Specific feature test for patch'
1284
1285     scm:
1286       - integration-gerrit-scm:
1287           basedir: '{project}'
1288           refspec: '$GERRIT_REFSPEC'
1289           branch: '{branch}'
1290       - integration-distribution-scm:
1291           branch: '{branch}'
1292
1293     wrappers:
1294       - opendaylight-infra-wrappers:
1295           build-timeout: '{build-timeout}'
1296
1297     triggers:
1298       - gerrit:
1299           server-name: '{server-name}'
1300           trigger-on:
1301             - comment-added-contains-event:
1302                 comment-contains-value: 'test-{project}-all'
1303             - comment-added-contains-event:
1304                 comment-contains-value: 'test-{project}-{feature}'
1305           projects:
1306             - project-compare-type: 'ANT'
1307               project-pattern: '{project}'
1308               branches:
1309                 - branch-compare-type: 'ANT'
1310                   branch-pattern: '**/{branch}'
1311           skip-vote:
1312             successful: true
1313             failed: true
1314             unstable: true
1315             notbuilt: true
1316
1317     prebuilders:
1318       - integration-rebase-gerrit-patch
1319       - integration-get-bundle-url
1320       - inject:
1321           properties-file: 'bundle.txt'
1322       - wipe-org-opendaylight-repo
1323       - provide-maven-settings:
1324           global-settings-file: 'odl-global-settings'
1325           settings-file: 'integration-settings'
1326       - maven-target:
1327           maven-version: 'mvn33'
1328           pom: '{project}/pom.xml'
1329           goals: >
1330               clean install dependency:tree -V -B -Djenkins
1331               -DskipTests
1332               -Dcheckstyle.skip=true
1333               -Dmaven.javadoc.skip=true
1334               -Dmaven.site.skip=true
1335               -DgenerateReports=false
1336               -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
1337               -Dstream={stream}
1338           java-opts:
1339             - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
1340           settings: 'integration-settings'
1341           settings-type: cfp
1342           global-settings: 'odl-global-settings'
1343           global-settings-type: cfp
1344
1345     maven:
1346       maven-name: 'mvn33'
1347       root-pom: 'distribution/pom.xml'
1348       goals: >
1349           clean install dependency:tree -V -B -Djenkins
1350           -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
1351       maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
1352       settings: 'integration-settings'
1353       settings-type: cfp
1354       global-settings: 'odl-global-settings'
1355       global-settings-type: cfp
1356       ignore-upstream-changes: true
1357       post-step-run-condition: 'SUCCESS'
1358
1359     postbuilders:
1360       - trigger-builds:
1361           - project: '{csit-list}'
1362             block: true
1363             predefined-parameters:
1364               BUNDLEURL=$BUNDLEURL
1365
1366     publishers:
1367       - email-notification:
1368           email-recipients: '{email-recipients}'
1369           email-prefix: '[{project}]'