e1dde447d86b3a60eaeb3146784e176edf5298d1
[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-stream-test-plan: stream specific robot test plan ($STREAMTESTPLAN)
21 # integration-test-plan: fallback robot test plan ($TESTPLAN)
22 # integration-patch-refspec: test branch ($PATCHREFSPEC)
23
24
25 # New templates
26
27 - job-template:
28     name: '{project}-csit-verify-1node-{functionality}'
29     disabled: false
30
31     project-type: freestyle
32     node: dynamic_robot
33
34     logrotate:
35         daysToKeep: '{build-days-to-keep}'
36         numToKeep: '{build-num-to-keep}'
37         artifactDaysToKeep: '{build-artifact-days-to-keep}'
38         artifactNumToKeep: '{build-num-to-keep}'
39
40     parameters:
41         - project-parameter:
42             project: 'integration/test'
43         - integration-branch:
44             branch: 'stable/beryllium'
45         - integration-distribution-stream:
46             stream: 'beryllium'
47         - integration-bundleurl:
48             bundleurl: 'last'
49         - integration-controller-scope:
50             controller-scope: 'only'
51         - integration-controller-features:
52             controller-features: '{install-features}'
53         - integration-test-options:
54             test-options: '{robot-options}'
55         - integration-stream-test-plan:
56             stream-test-plan: '{project}-{functionality}-beryllium.txt'
57         - integration-test-plan:
58             test-plan: '{project}-{functionality}.txt'
59         - integration-jdk-version:
60             jdkversion: 'openjdk7'
61             # TODO: Switch to openjdk8 from Boron on.
62
63     scm:
64         - integration-gerrit-scm:
65             credentials-id: '{ssh-credentials}'
66             basedir: 'test'
67             refspec: '$GERRIT_REFSPEC'
68             branch: 'master'
69
70     wrappers:
71         - build-timeout
72         - integration-jclouds-controller-mininet:
73             controller-vms: 1
74             mininet-image: '{mininet-image}'
75             mininet-vms: '{mininet-vms}'
76             mininet-cloud-name: '{mininet-cloud-name}'
77         - ssh-agent-credentials:
78             users:
79                 - '{ssh-credentials}'
80
81     triggers:
82         - integration-trigger-patch-submitted:
83             name: 'integration/test'
84             branch: 'master'
85             pattern: 'csit/suites/{project}/**'
86
87     builders:
88         - integration-cleanup-workspace
89         - integration-install-robotframework
90         - inject:
91             properties-file: 'env.properties'
92         - integration-get-slave-addresses
93         - inject:
94             properties-file: 'slave_addresses.txt'
95         - integration-get-bundle-vars
96         - inject:
97             properties-file: 'bundle_vars.txt'
98         - integration-deploy-controller-run-test
99         - integration-cleanup-tmp
100
101     publishers:
102         - integration-robot:
103             unstable-if: 0.0
104             pass-if: 100.0
105         - archive:
106             artifacts: '*.log,*.log.xz'
107         - email-notification:
108             email-prefix: '[{project}]'
109
110 - job-template:
111     name: '{project}-csit-1node-{functionality}-{install}-{stream}'
112     disabled: false
113
114     project-type: freestyle
115     node: dynamic_robot
116
117     logrotate:
118         daysToKeep: '{build-days-to-keep}'
119         numToKeep: '{build-num-to-keep}'
120         artifactDaysToKeep: '{build-artifact-days-to-keep}'
121         artifactNumToKeep: '{build-num-to-keep}'
122
123     parameters:
124         - project-parameter:
125             project: 'integration/test'
126         - integration-branch:
127             branch: '{branch}'
128         - integration-distribution-stream:
129             stream: '{stream}'
130         - integration-bundleurl:
131             bundleurl: 'last'
132         - integration-controller-scope:
133             controller-scope: '{scope}'
134         - integration-controller-features:
135             controller-features: '{install-features}'
136         - integration-test-options:
137             test-options: '{robot-options}'
138         - integration-stream-test-plan:
139             stream-test-plan: '{project}-{functionality}-{stream}.txt'
140         - integration-test-plan:
141             test-plan: '{project}-{functionality}.txt'
142         - integration-patch-refspec:
143             branch: 'master'
144         - integration-jdk-version:
145             jdkversion: '{jre}'
146
147     scm:
148         - integration-gerrit-scm:
149             credentials-id: '{ssh-credentials}'
150             basedir: 'test'
151             refspec: '$PATCHREFSPEC'
152             branch: 'master'
153
154     wrappers:
155         - build-timeout
156         - integration-jclouds-controller-mininet:
157             controller-vms: 1
158             mininet-image: '{mininet-image}'
159             mininet-vms: '{mininet-vms}'
160             mininet-cloud-name: '{mininet-cloud-name}'
161         - ssh-agent-credentials:
162             users:
163                 - '{ssh-credentials}'
164
165     triggers:
166         - integration-csit-{install}:
167             jobs: '{trigger-jobs}'
168
169     builders:
170         - integration-cleanup-workspace
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         - archive:
188             artifacts: '*.log,*.log.xz'
189         - email-notification:
190             email-prefix: '[{project}]'
191         - plot:
192           - title: '{01-plot-title}'
193             yaxis: '{01-plot-yaxis}'
194             group: '{01-plot-group}'
195             num-builds: '5400'
196             style: line
197             use-description: false
198             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
199             series:
200               - file: '{01-plot-data-file}'
201                 inclusion-flag: 'off'
202                 display-table: true
203                 format: csv
204           - title: '{02-plot-title}'
205             yaxis: '{02-plot-yaxis}'
206             group: '{02-plot-group}'
207             num-builds: '5400'
208             style: line
209             use-description: false
210             csv-file-name: '{project}-csit-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
211             series:
212               - file: '{02-plot-data-file}'
213                 inclusion-flag: 'off'
214                 display-table: true
215                 format: csv
216
217 - job-template:
218     name: '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
219     disabled: false
220
221     project-type: freestyle
222     node: dynamic_robot
223
224     logrotate:
225         daysToKeep: '{build-days-to-keep}'
226         numToKeep: '{build-num-to-keep}'
227         artifactDaysToKeep: '{build-artifact-days-to-keep}'
228         artifactNumToKeep: '{build-num-to-keep}'
229
230     parameters:
231         - project-parameter:
232             project: 'integration/test'
233         - integration-branch:
234             branch: '{branch}'
235         - integration-distribution-stream:
236             stream: '{stream}'
237         - integration-bundleurl:
238             bundleurl: 'last'
239         - integration-controller-scope:
240             controller-scope: '{scope}'
241         - integration-controller-features:
242             controller-features: '{install-features}'
243         - integration-test-options:
244             test-options: '{robot-options}'
245         - integration-stream-test-plan:
246             stream-test-plan: '{project}-{functionality}-{stream}.txt'
247         - integration-test-plan:
248             test-plan: '{project}-{functionality}.txt'
249         - integration-patch-refspec:
250             branch: 'master'
251         - integration-jdk-version:
252             jdkversion: '{jre}'
253
254     scm:
255         - integration-gerrit-scm:
256             credentials-id: '{ssh-credentials}'
257             basedir: 'test'
258             refspec: '$PATCHREFSPEC'
259             branch: 'master'
260
261     wrappers:
262         - integration-jclouds-controller-mininet:
263             controller-vms: 1
264             mininet-image: '{mininet-image}'
265             mininet-vms: '{mininet-vms}'
266             mininet-cloud-name: '{mininet-cloud-name}'
267         - ssh-agent-credentials:
268             users:
269                 - '{ssh-credentials}'
270
271     triggers:
272         - timed: '{schedule}'
273
274     builders:
275         - integration-cleanup-workspace
276         - integration-install-robotframework
277         - inject:
278             properties-file: 'env.properties'
279         - integration-get-slave-addresses
280         - inject:
281             properties-file: 'slave_addresses.txt'
282         - integration-get-bundle-vars
283         - inject:
284             properties-file: 'bundle_vars.txt'
285         - integration-deploy-controller-run-test
286         - integration-cleanup-tmp
287
288     publishers:
289         - integration-robot:
290             unstable-if: 0.0
291             pass-if: 100.0
292         - archive:
293             artifacts: '*.log,*.log.xz'
294         - email-notification:
295             email-prefix: '[{project}]'
296         - plot:
297           - title: '{01-plot-title}'
298             yaxis: '{01-plot-yaxis}'
299             group: '{01-plot-group}'
300             num-builds: '180'
301             style: line
302             use-description: false
303             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
304             series:
305               - file: '{01-plot-data-file}'
306                 inclusion-flag: 'off'
307                 display-table: true
308                 format: csv
309           - title: '{02-plot-title}'
310             yaxis: '{02-plot-yaxis}'
311             group: '{02-plot-group}'
312             num-builds: '180'
313             style: line
314             use-description: false
315             csv-file-name: '{project}-csit-periodic-1node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
316             series:
317               - file: '{02-plot-data-file}'
318                 inclusion-flag: 'off'
319                 display-table: true
320                 format: csv
321
322 - job-template:
323     name: '{project}-csit-verify-3node-{functionality}'
324     disabled: false
325
326     project-type: freestyle
327     node: dynamic_robot
328
329     logrotate:
330         daysToKeep: '{build-days-to-keep}'
331         numToKeep: '{build-num-to-keep}'
332         artifactDaysToKeep: '{build-artifact-days-to-keep}'
333         artifactNumToKeep: '{build-num-to-keep}'
334
335     parameters:
336         - project-parameter:
337             project: 'integration/test'
338         - integration-branch:
339             branch: 'stable/beryllium'
340         - integration-distribution-stream:
341             stream: 'beryllium'
342         - integration-bundleurl:
343             bundleurl: 'last'
344         - integration-controller-scope:
345             controller-scope: 'only'
346         - integration-controller-features:
347             controller-features: 'odl-jolokia,{install-features}'
348         - integration-test-options:
349             test-options: '{robot-options}'
350         - integration-stream-test-plan:
351             stream-test-plan: '{project}-{functionality}-beryllium.txt'
352         - integration-test-plan:
353             test-plan: '{project}-{functionality}.txt'
354         - integration-jdk-version:
355             jdkversion: 'openjdk7'
356             # TODO: Switch to openjdk8 from Boron on.
357
358     scm:
359         - integration-gerrit-scm:
360             credentials-id: '{ssh-credentials}'
361             basedir: 'test'
362             refspec: '$GERRIT_REFSPEC'
363             branch: 'master'
364
365     wrappers:
366         - build-timeout
367         - integration-jclouds-controller-mininet:
368             controller-vms: 3
369             mininet-image: '{mininet-image}'
370             mininet-vms: '{mininet-vms}'
371             mininet-cloud-name: '{mininet-cloud-name}'
372         - ssh-agent-credentials:
373             users:
374                 - '{ssh-credentials}'
375
376     triggers:
377         - integration-trigger-patch-submitted:
378             name: 'integration/test'
379             branch: 'master'
380             pattern: 'csit/suites/{project}/**'
381
382     builders:
383         - integration-cleanup-workspace
384         - integration-install-robotframework
385         - inject:
386             properties-file: 'env.properties'
387         - integration-get-slave-addresses
388         - inject:
389             properties-file: 'slave_addresses.txt'
390         - integration-get-bundle-vars
391         - inject:
392             properties-file: 'bundle_vars.txt'
393         - integration-configure-clustering
394         - integration-start-cluster-run-test
395         - integration-cleanup-tmp
396
397     publishers:
398         - integration-robot:
399             unstable-if: 0.0
400             pass-if: 100.0
401         - archive:
402             artifacts: '*.log,*.log.xz'
403         - email-notification:
404             email-prefix: '[{project}]'
405
406 - job-template:
407     name: '{project}-csit-3node-{functionality}-{install}-{stream}'
408     disabled: false
409
410     project-type: freestyle
411     node: dynamic_robot
412
413     logrotate:
414         daysToKeep: '{build-days-to-keep}'
415         numToKeep: '{build-num-to-keep}'
416         artifactDaysToKeep: '{build-artifact-days-to-keep}'
417         artifactNumToKeep: '{build-num-to-keep}'
418
419     parameters:
420         - project-parameter:
421             project: 'integration/test'
422         - integration-branch:
423             branch: '{branch}'
424         - integration-distribution-stream:
425             stream: '{stream}'
426         - integration-bundleurl:
427             bundleurl: 'last'
428         - integration-controller-scope:
429             controller-scope: '{scope}'
430         - integration-controller-features:
431             controller-features: 'odl-jolokia,{install-features}'
432         - integration-test-options:
433             test-options: '{robot-options}'
434         - integration-stream-test-plan:
435             stream-test-plan: '{project}-{functionality}-{stream}.txt'
436         - integration-test-plan:
437             test-plan: '{project}-{functionality}.txt'
438         - integration-patch-refspec:
439             branch: 'master'
440         - integration-jdk-version:
441             jdkversion: '{jre}'
442
443     scm:
444         - integration-gerrit-scm:
445             credentials-id: '{ssh-credentials}'
446             basedir: 'test'
447             refspec: '$PATCHREFSPEC'
448             branch: 'master'
449
450     wrappers:
451         - build-timeout
452         - integration-jclouds-controller-mininet:
453             controller-vms: 3
454             mininet-image: '{mininet-image}'
455             mininet-vms: '{mininet-vms}'
456             mininet-cloud-name: '{mininet-cloud-name}'
457         - ssh-agent-credentials:
458             users:
459                 - '{ssh-credentials}'
460
461     triggers:
462         - integration-csit-{install}:
463             jobs: '{trigger-jobs}'
464
465     builders:
466         - integration-cleanup-workspace
467         - integration-install-robotframework
468         - inject:
469             properties-file: 'env.properties'
470         - integration-get-slave-addresses
471         - inject:
472             properties-file: 'slave_addresses.txt'
473         - integration-get-bundle-vars
474         - inject:
475             properties-file: 'bundle_vars.txt'
476         - integration-configure-clustering
477         - integration-start-cluster-run-test
478         - integration-cleanup-tmp
479
480     publishers:
481         - integration-robot:
482             unstable-if: 0.0
483             pass-if: 100.0
484         - archive:
485             artifacts: '*.log,*.log.xz'
486         - email-notification:
487             email-prefix: '[{project}]'
488         - plot:
489           - title: '{01-plot-title}'
490             yaxis: '{01-plot-yaxis}'
491             group: '{01-plot-group}'
492             num-builds: '5400'
493             style: line
494             use-description: false
495             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
496             series:
497               - file: '{01-plot-data-file}'
498                 inclusion-flag: 'off'
499                 display-table: true
500                 format: csv
501           - title: '{02-plot-title}'
502             yaxis: '{02-plot-yaxis}'
503             group: '{02-plot-group}'
504             num-builds: '5400'
505             style: line
506             use-description: false
507             csv-file-name: '{project}-csit-3node-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
508             series:
509               - file: '{02-plot-data-file}'
510                 inclusion-flag: 'off'
511                 display-table: true
512                 format: csv
513
514 - job-template:
515     name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}'
516     disabled: false
517
518     project-type: freestyle
519     node: dynamic_robot
520
521     logrotate:
522         daysToKeep: '{build-days-to-keep}'
523         numToKeep: '{build-num-to-keep}'
524         artifactDaysToKeep: '{build-artifact-days-to-keep}'
525         artifactNumToKeep: '{build-num-to-keep}'
526
527     parameters:
528         - project-parameter:
529             project: 'integration/test'
530         - integration-branch:
531             branch: '{branch}'
532         - integration-distribution-stream:
533             stream: '{stream}'
534         - integration-bundleurl:
535             bundleurl: 'last'
536         - integration-controller-scope:
537             controller-scope: '{scope}'
538         - integration-controller-features:
539             controller-features: 'odl-jolokia,{install-features}'
540         - integration-test-options:
541             test-options: '{robot-options}'
542         - integration-stream-test-plan:
543             stream-test-plan: '{project}-{functionality}-{stream}.txt'
544         - integration-test-plan:
545             test-plan: '{project}-{functionality}.txt'
546         - integration-patch-refspec:
547             branch: 'master'
548         - integration-jdk-version:
549             jdkversion: '{jre}'
550
551     scm:
552         - integration-gerrit-scm:
553             credentials-id: '{ssh-credentials}'
554             basedir: 'test'
555             refspec: '$PATCHREFSPEC'
556             branch: 'master'
557
558     wrappers:
559         - integration-jclouds-controller-mininet:
560             controller-vms: 3
561             mininet-image: '{mininet-image}'
562             mininet-vms: '{mininet-vms}'
563             mininet-cloud-name: '{mininet-cloud-name}'
564         - ssh-agent-credentials:
565             users:
566                 - '{ssh-credentials}'
567
568     triggers:
569         - timed: '{schedule}'
570
571     builders:
572         - integration-cleanup-workspace
573         - integration-install-robotframework
574         - inject:
575             properties-file: 'env.properties'
576         - integration-get-slave-addresses
577         - inject:
578             properties-file: 'slave_addresses.txt'
579         - integration-get-bundle-vars
580         - inject:
581             properties-file: 'bundle_vars.txt'
582         - integration-configure-clustering
583         - integration-start-cluster-run-test
584         - integration-cleanup-tmp
585
586     publishers:
587         - integration-robot:
588             unstable-if: 0.0
589             pass-if: 100.0
590         - archive:
591             artifacts: '*.log,*.log.xz'
592         - email-notification:
593             email-prefix: '[{project}]'
594         - plot:
595           - title: '{01-plot-title}'
596             yaxis: '{01-plot-yaxis}'
597             group: '{01-plot-group}'
598             num-builds: '5400'
599             style: line
600             use-description: false
601             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
602             series:
603               - file: '{01-plot-data-file}'
604                 inclusion-flag: 'off'
605                 display-table: true
606                 format: csv
607           - title: '{02-plot-title}'
608             yaxis: '{02-plot-yaxis}'
609             group: '{02-plot-group}'
610             num-builds: '5400'
611             style: line
612             use-description: false
613             csv-file-name: '{project}-csit-3node-periodic-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
614             series:
615               - file: '{02-plot-data-file}'
616                 inclusion-flag: 'off'
617                 display-table: true
618                 format: csv
619
620 - job-template:
621     name: '{project}-openstack-{functionality}-daily-{openstack}-{odl}'
622
623     project-type: freestyle
624     node: dynamic_robot
625
626     logrotate:
627         daysToKeep: '{build-days-to-keep}'
628         numToKeep: '{build-num-to-keep}'
629         artifactDaysToKeep: '{build-artifact-days-to-keep}'
630         artifactNumToKeep: '{build-num-to-keep}'
631
632     parameters:
633         - project-parameter:
634             project: 'integration/test'
635         - integration-patch-refspec:
636             branch: 'master'
637         - integration-test-plan:
638             test-plan: '{project}-{functionality}.txt'
639         - string:
640             name: OPENSTACK_BRANCH
641             default: '{openstack-branch}'
642             description: 'Openstack branch to use with devstack'
643         - string:
644             name: ODL_VERSION
645             default: '{odl-version}'
646             description: 'OpenDaylight version to use with devstack + networking_odl project'
647         - string:
648             name: TEMPEST_REGEX
649             default: 'tempest.api.network'
650             description: 'Default grouping of tempest tests to run'
651
652     scm:
653         - integration-gerrit-scm:
654             credentials-id: '{ssh-credentials}'
655             basedir: 'test'
656             refspec: '$PATCHREFSPEC'
657             branch: 'master'
658
659     wrappers:
660           - build-timeout
661           - jclouds:
662               instances:
663                 - rk-c7-devstack:
664                     cloud-name: 'Rackspace DFW - Devstack'
665                     count: '1'
666                     stop-on-terminate: False
667           - ssh-agent-credentials:
668               users:
669                   - '{ssh-credentials}'
670
671     # Trigger jobs (daily)
672     triggers:
673         - integration-csit-all
674
675     builders:
676         - integration-install-robotframework
677         - inject:
678             properties-file: 'env.properties'
679         - integration-get-slave-addresses
680         - inject:
681             properties-file: 'slave_addresses.txt'
682         - include-raw-integration-deploy-devstack-testing
683         - integration-cleanup-tmp
684
685     publishers:
686         - integration-robot:
687             unstable-if: 0.0
688             pass-if: 100.0
689         - archive:
690             artifacts: 'devstacklog.txt,*karaf*'
691         - email-notification:
692             email-prefix: '[project]'