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