Merge "Change default mininet image to Ubuntu"
[releng/builder.git] / jjb / integration / integration-templates.yaml
1 # Job templates in this file (please update with every new template):
2 #
3 # New (for Be release):
4 # {project}-csit-verify-1node-{functionality}
5 # {project}-csit-1node-{functionality}-{install}-{stream}
6 # {project}-csit-1node-periodic-{functionality}-{install}-{stream}
7 # {project}-csit-verify-3node-{functionality}
8 # {project}-csit-3node-{functionality}-{install}-{stream}
9 # {project}-csit-3node-periodic-{functionality}-{install}-{stream}
10 #
11 # Parameters:
12 #
13 # project-parameter: main project integration/test ($PROJECT)
14 # jre: (openjdk7 or openjdk8) Java runtime environment to use when launching ODL
15 # integration-branch: distribution branch ($BRANCH)
16 # integration-controller-bundleurl: distribution URL ($BUNDLEURL)
17 # integration-controller-scope: only or all features ($CONTROLLERSCOPE)
18 # integration-controller-features: features under test ($CONTROLLER FEATURES)
19 # integration-test-options: robot options ($TESTOPTIONS)
20 # integration-test-plan: robot test plan ($TESTPLAN)
21 # integration-patch-refspec: test branch ($PATCHREFSPEC)
22
23
24 # New templates
25
26 - job-template:
27     name: '{project}-csit-verify-1node-{functionality}'
28     disabled: false
29
30     project-type: freestyle
31     node: dynamic_robot
32
33     logrotate:
34         daysToKeep: '{build-days-to-keep}'
35         numToKeep: '{build-num-to-keep}'
36         artifactDaysToKeep: '{build-artifact-days-to-keep}'
37         artifactNumToKeep: '{build-num-to-keep}'
38
39     parameters:
40         - project-parameter:
41             project: 'integration/test'
42         - integration-branch:
43             branch: 'stable/beryllium'
44         - integration-distribution-stream:
45             stream: 'beryllium'
46         - integration-bundleurl:
47             bundleurl: 'last'
48         - integration-controller-scope:
49             controller-scope: 'only'
50         - integration-controller-features:
51             controller-features: '{install-features}'
52         - integration-test-options:
53             test-options: '{robot-options}'
54         - integration-test-plan:
55             test-plan: '{project}-{functionality}.txt'
56         - integration-jdk-version:
57             jdkversion: 'openjdk7'
58             # TODO: Switch to openjdk8 from Boron on.
59
60     scm:
61         - integration-gerrit-scm:
62             credentials-id: '{ssh-credentials}'
63             basedir: 'test'
64             refspec: '$GERRIT_REFSPEC'
65             branch: 'master'
66
67     wrappers:
68         - build-timeout
69         - integration-jclouds-controller-mininet:
70             controller-vms: 1
71             mininet-image: '{mininet-image}'
72             mininet-vms: '{mininet-vms}'
73             mininet-cloud-name: '{mininet-cloud-name}'
74         - ssh-agent-credentials:
75             users:
76                 - '{ssh-credentials}'
77
78     triggers:
79         - integration-trigger-patch-submitted:
80             name: 'integration/test'
81             branch: 'master'
82             pattern: 'csit/suites/{project}/**'
83
84     builders:
85         - integration-cleanup-workspace
86         - integration-install-robotframework
87         - inject:
88             properties-file: 'env.properties'
89         - integration-get-slave-addresses
90         - inject:
91             properties-file: 'slave_addresses.txt'
92         - integration-get-bundle-vars
93         - inject:
94             properties-file: 'bundle_vars.txt'
95         - integration-deploy-controller-run-test
96         - integration-cleanup-tmp
97
98     publishers:
99         - integration-robot:
100             unstable-if: 0.0
101             pass-if: 100.0
102         - archive:
103             artifacts: '*.log,*.log.xz'
104         - email-notification:
105             email-prefix: '[{project}]'
106
107 - job-template:
108     name: '{project}-csit-1node-{functionality}-{install}-{stream}'
109     disabled: false
110
111     project-type: freestyle
112     node: dynamic_robot
113
114     logrotate:
115         daysToKeep: '{build-days-to-keep}'
116         numToKeep: '{build-num-to-keep}'
117         artifactDaysToKeep: '{build-artifact-days-to-keep}'
118         artifactNumToKeep: '{build-num-to-keep}'
119
120     parameters:
121         - project-parameter:
122             project: 'integration/test'
123         - integration-branch:
124             branch: '{branch}'
125         - integration-distribution-stream:
126             stream: '{stream}'
127         - integration-bundleurl:
128             bundleurl: 'last'
129         - integration-controller-scope:
130             controller-scope: '{scope}'
131         - integration-controller-features:
132             controller-features: '{install-features}'
133         - integration-test-options:
134             test-options: '{robot-options}'
135         - integration-test-plan:
136             test-plan: '{project}-{functionality}.txt'
137         - integration-patch-refspec:
138             branch: 'master'
139         - integration-jdk-version:
140             jdkversion: '{jre}'
141
142     scm:
143         - integration-gerrit-scm:
144             credentials-id: '{ssh-credentials}'
145             basedir: 'test'
146             refspec: '$PATCHREFSPEC'
147             branch: 'master'
148
149     wrappers:
150         - build-timeout
151         - integration-jclouds-controller-mininet:
152             controller-vms: 1
153             mininet-image: '{mininet-image}'
154             mininet-vms: '{mininet-vms}'
155             mininet-cloud-name: '{mininet-cloud-name}'
156         - ssh-agent-credentials:
157             users:
158                 - '{ssh-credentials}'
159
160     triggers:
161         - integration-csit-{install}:
162             jobs: '{trigger-jobs}'
163
164     builders:
165         - integration-cleanup-workspace
166         - integration-install-robotframework
167         - inject:
168             properties-file: 'env.properties'
169         - integration-get-slave-addresses
170         - inject:
171             properties-file: 'slave_addresses.txt'
172         - integration-get-bundle-vars
173         - inject:
174             properties-file: 'bundle_vars.txt'
175         - integration-deploy-controller-run-test
176         - integration-cleanup-tmp
177
178     publishers:
179         - integration-robot:
180             unstable-if: 0.0
181             pass-if: 100.0
182         - archive:
183             artifacts: '*.log,*.log.xz'
184         - email-notification:
185             email-prefix: '[{project}]'
186         - plot:
187           - title: '{01-plot-title}'
188             yaxis: '{01-plot-yaxis}'
189             group: '{01-plot-group}'
190             num-builds: '5400'
191             style: line
192             use-description: false
193             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
194             series:
195               - file: '{01-plot-data-file}'
196                 inclusion-flag: 'off'
197                 display-table: true
198                 format: csv
199           - title: '{02-plot-title}'
200             yaxis: '{02-plot-yaxis}'
201             group: '{02-plot-group}'
202             num-builds: '5400'
203             style: line
204             use-description: false
205             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
206             series:
207               - file: '{02-plot-data-file}'
208                 inclusion-flag: 'off'
209                 display-table: true
210                 format: csv
211
212 - job-template:
213     name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
214     disabled: false
215
216     project-type: freestyle
217     node: dynamic_robot
218
219     logrotate:
220         daysToKeep: '{build-days-to-keep}'
221         numToKeep: '{build-num-to-keep}'
222         artifactDaysToKeep: '{build-artifact-days-to-keep}'
223         artifactNumToKeep: '{build-num-to-keep}'
224
225     parameters:
226         - project-parameter:
227             project: 'integration/test'
228         - integration-branch:
229             branch: '{branch}'
230         - integration-distribution-stream:
231             stream: '{stream}'
232         - integration-bundleurl:
233             bundleurl: 'last'
234         - integration-controller-scope:
235             controller-scope: '{scope}'
236         - integration-controller-features:
237             controller-features: '{install-features}'
238         - integration-test-options:
239             test-options: '{robot-options}'
240         - integration-test-plan:
241             test-plan: '{project}-{functionality}.txt'
242         - integration-patch-refspec:
243             branch: 'master'
244         - integration-jdk-version:
245             jdkversion: '{jre}'
246
247     scm:
248         - integration-gerrit-scm:
249             credentials-id: '{ssh-credentials}'
250             basedir: 'test'
251             refspec: '$PATCHREFSPEC'
252             branch: 'master'
253
254     wrappers:
255         - integration-jclouds-controller-mininet:
256             controller-vms: 1
257             mininet-image: '{mininet-image}'
258             mininet-vms: '{mininet-vms}'
259             mininet-cloud-name: '{mininet-cloud-name}'
260         - ssh-agent-credentials:
261             users:
262                 - '{ssh-credentials}'
263
264     triggers:
265         - timed: '{schedule}'
266
267     builders:
268         - integration-cleanup-workspace
269         - integration-install-robotframework
270         - inject:
271             properties-file: 'env.properties'
272         - integration-get-slave-addresses
273         - inject:
274             properties-file: 'slave_addresses.txt'
275         - integration-get-bundle-vars
276         - inject:
277             properties-file: 'bundle_vars.txt'
278         - integration-deploy-controller-run-test
279         - integration-cleanup-tmp
280
281     publishers:
282         - integration-robot:
283             unstable-if: 0.0
284             pass-if: 100.0
285         - archive:
286             artifacts: '*.log,*.log.xz'
287         - email-notification:
288             email-prefix: '[{project}]'
289         - plot:
290           - title: '{01-plot-title}'
291             yaxis: '{01-plot-yaxis}'
292             group: '{01-plot-group}'
293             num-builds: '180'
294             style: line
295             use-description: false
296             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
297             series:
298               - file: '{01-plot-data-file}'
299                 inclusion-flag: 'off'
300                 display-table: true
301                 format: csv
302           - title: '{02-plot-title}'
303             yaxis: '{02-plot-yaxis}'
304             group: '{02-plot-group}'
305             num-builds: '180'
306             style: line
307             use-description: false
308             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
309             series:
310               - file: '{02-plot-data-file}'
311                 inclusion-flag: 'off'
312                 display-table: true
313                 format: csv
314
315 - job-template:
316     name: '{project}-csit-verify-3node-{functionality}'
317     disabled: false
318
319     project-type: freestyle
320     node: dynamic_robot
321
322     logrotate:
323         daysToKeep: '{build-days-to-keep}'
324         numToKeep: '{build-num-to-keep}'
325         artifactDaysToKeep: '{build-artifact-days-to-keep}'
326         artifactNumToKeep: '{build-num-to-keep}'
327
328     parameters:
329         - project-parameter:
330             project: 'integration/test'
331         - integration-branch:
332             branch: 'stable/beryllium'
333         - integration-distribution-stream:
334             stream: 'beryllium'
335         - integration-bundleurl:
336             bundleurl: 'last'
337         - integration-controller-scope:
338             controller-scope: 'only'
339         - integration-controller-features:
340             controller-features: 'odl-mdsal-clustering,{install-features}'
341         - integration-test-options:
342             test-options: '{robot-options}'
343         - integration-test-plan:
344             test-plan: '{project}-{functionality}.txt'
345         - integration-jdk-version:
346             jdkversion: 'openjdk7'
347             # TODO: Switch to openjdk8 from Boron on.
348
349     scm:
350         - integration-gerrit-scm:
351             credentials-id: '{ssh-credentials}'
352             basedir: 'test'
353             refspec: '$GERRIT_REFSPEC'
354             branch: 'master'
355
356     wrappers:
357         - build-timeout
358         - integration-jclouds-controller-mininet:
359             controller-vms: 3
360             mininet-image: '{mininet-image}'
361             mininet-vms: '{mininet-vms}'
362             mininet-cloud-name: '{mininet-cloud-name}'
363         - ssh-agent-credentials:
364             users:
365                 - '{ssh-credentials}'
366
367     triggers:
368         - integration-trigger-patch-submitted:
369             name: 'integration/test'
370             branch: 'master'
371             pattern: 'csit/suites/{project}/**'
372
373     builders:
374         - integration-cleanup-workspace
375         - integration-install-robotframework
376         - inject:
377             properties-file: 'env.properties'
378         - integration-get-slave-addresses
379         - inject:
380             properties-file: 'slave_addresses.txt'
381         - integration-get-bundle-vars
382         - inject:
383             properties-file: 'bundle_vars.txt'
384         - integration-deploy-controller
385         - integration-configure-clustering
386         - integration-start-cluster-run-test
387         - integration-cleanup-tmp
388
389     publishers:
390         - integration-robot:
391             unstable-if: 0.0
392             pass-if: 100.0
393         - archive:
394             artifacts: '*.log,*.log.xz'
395         - email-notification:
396             email-prefix: '[{project}]'
397
398 - job-template:
399     name: '{project}-csit-3node-{functionality}-{install}-{stream}'
400     disabled: false
401
402     project-type: freestyle
403     node: dynamic_robot
404
405     logrotate:
406         daysToKeep: '{build-days-to-keep}'
407         numToKeep: '{build-num-to-keep}'
408         artifactDaysToKeep: '{build-artifact-days-to-keep}'
409         artifactNumToKeep: '{build-num-to-keep}'
410
411     parameters:
412         - project-parameter:
413             project: 'integration/test'
414         - integration-branch:
415             branch: '{branch}'
416         - integration-distribution-stream:
417             stream: '{stream}'
418         - integration-bundleurl:
419             bundleurl: 'last'
420         - integration-controller-scope:
421             controller-scope: '{scope}'
422         - integration-controller-features:
423             controller-features: 'odl-mdsal-clustering,{install-features}'
424         - integration-test-options:
425             test-options: '{robot-options}'
426         - integration-test-plan:
427             test-plan: '{project}-{functionality}.txt'
428         - integration-patch-refspec:
429             branch: 'master'
430         - integration-jdk-version:
431             jdkversion: '{jre}'
432
433     scm:
434         - integration-gerrit-scm:
435             credentials-id: '{ssh-credentials}'
436             basedir: 'test'
437             refspec: '$PATCHREFSPEC'
438             branch: 'master'
439
440     wrappers:
441         - build-timeout
442         - integration-jclouds-controller-mininet:
443             controller-vms: 3
444             mininet-image: '{mininet-image}'
445             mininet-vms: '{mininet-vms}'
446             mininet-cloud-name: '{mininet-cloud-name}'
447         - ssh-agent-credentials:
448             users:
449                 - '{ssh-credentials}'
450
451     triggers:
452         - integration-csit-{install}:
453             jobs: '{trigger-jobs}'
454
455     builders:
456         - integration-cleanup-workspace
457         - integration-install-robotframework
458         - inject:
459             properties-file: 'env.properties'
460         - integration-get-slave-addresses
461         - inject:
462             properties-file: 'slave_addresses.txt'
463         - integration-get-bundle-vars
464         - inject:
465             properties-file: 'bundle_vars.txt'
466         - integration-deploy-controller
467         - integration-configure-clustering
468         - integration-start-cluster-run-test
469         - integration-cleanup-tmp
470
471     publishers:
472         - integration-robot:
473             unstable-if: 0.0
474             pass-if: 100.0
475         - archive:
476             artifacts: '*.log,*.log.xz'
477         - email-notification:
478             email-prefix: '[{project}]'
479         - plot:
480           - title: '{01-plot-title}'
481             yaxis: '{01-plot-yaxis}'
482             group: '{01-plot-group}'
483             num-builds: '5400'
484             style: line
485             use-description: false
486             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
487             series:
488               - file: '{01-plot-data-file}'
489                 inclusion-flag: 'off'
490                 display-table: true
491                 format: csv
492           - title: '{02-plot-title}'
493             yaxis: '{02-plot-yaxis}'
494             group: '{02-plot-group}'
495             num-builds: '5400'
496             style: line
497             use-description: false
498             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
499             series:
500               - file: '{02-plot-data-file}'
501                 inclusion-flag: 'off'
502                 display-table: true
503                 format: csv
504
505 - job-template:
506     name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}'
507     disabled: false
508
509     project-type: freestyle
510     node: dynamic_robot
511
512     logrotate:
513         daysToKeep: '{build-days-to-keep}'
514         numToKeep: '{build-num-to-keep}'
515         artifactDaysToKeep: '{build-artifact-days-to-keep}'
516         artifactNumToKeep: '{build-num-to-keep}'
517
518     parameters:
519         - project-parameter:
520             project: 'integration/test'
521         - integration-branch:
522             branch: '{branch}'
523         - integration-distribution-stream:
524             stream: '{stream}'
525         - integration-bundleurl:
526             bundleurl: 'last'
527         - integration-controller-scope:
528             controller-scope: '{scope}'
529         - integration-controller-features:
530             controller-features: 'odl-mdsal-clustering,{install-features}'
531         - integration-test-options:
532             test-options: '{robot-options}'
533         - integration-test-plan:
534             test-plan: '{project}-{functionality}.txt'
535         - integration-patch-refspec:
536             branch: 'master'
537         - integration-jdk-version:
538             jdkversion: '{jre}'
539
540     scm:
541         - integration-gerrit-scm:
542             credentials-id: '{ssh-credentials}'
543             basedir: 'test'
544             refspec: '$PATCHREFSPEC'
545             branch: 'master'
546
547     wrappers:
548         - integration-jclouds-controller-mininet:
549             controller-vms: 3
550             mininet-image: '{mininet-image}'
551             mininet-vms: '{mininet-vms}'
552             mininet-cloud-name: '{mininet-cloud-name}'
553         - ssh-agent-credentials:
554             users:
555                 - '{ssh-credentials}'
556
557     triggers:
558         - timed: '{schedule}'
559
560     builders:
561         - integration-cleanup-workspace
562         - integration-install-robotframework
563         - inject:
564             properties-file: 'env.properties'
565         - integration-get-slave-addresses
566         - inject:
567             properties-file: 'slave_addresses.txt'
568         - integration-get-bundle-vars
569         - inject:
570             properties-file: 'bundle_vars.txt'
571         - integration-deploy-controller
572         - integration-configure-clustering
573         - integration-start-cluster-run-test
574         - integration-cleanup-tmp
575
576     publishers:
577         - integration-robot:
578             unstable-if: 0.0
579             pass-if: 100.0
580         - archive:
581             artifacts: '*.log,*.log.xz'
582         - email-notification:
583             email-prefix: '[{project}]'
584         - plot:
585           - title: '{01-plot-title}'
586             yaxis: '{01-plot-yaxis}'
587             group: '{01-plot-group}'
588             num-builds: '5400'
589             style: line
590             use-description: false
591             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
592             series:
593               - file: '{01-plot-data-file}'
594                 inclusion-flag: 'off'
595                 display-table: true
596                 format: csv
597           - title: '{02-plot-title}'
598             yaxis: '{02-plot-yaxis}'
599             group: '{02-plot-group}'
600             num-builds: '5400'
601             style: line
602             use-description: false
603             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
604             series:
605               - file: '{02-plot-data-file}'
606                 inclusion-flag: 'off'
607                 display-table: true
608                 format: csv