Make Openstack jobs more configurable
[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,*.csv'
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,*.csv'
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,*.csv'
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,*.csv'
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,*.csv'
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,*.csv'
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: '*log*'
691         - email-notification:
692             email-prefix: '[{project}]'
693
694 - job-template:
695     name: '{project}-csit-1node-openstack-{openstack}-{functionality}-{stream}'
696     disabled: false
697
698     project-type: freestyle
699     node: dynamic_robot
700
701     logrotate:
702         daysToKeep: '{build-days-to-keep}'
703         numToKeep: '{build-num-to-keep}'
704         artifactDaysToKeep: '{build-artifact-days-to-keep}'
705         artifactNumToKeep: '{build-num-to-keep}'
706
707     parameters:
708         - project-parameter:
709             project: 'integration/test'
710         - integration-branch:
711             branch: '{branch}'
712         - integration-distribution-stream:
713             stream: '{stream}'
714         - integration-bundleurl:
715             bundleurl: 'last'
716         - integration-controller-features:
717             controller-features: '{install-features}'
718         - integration-test-plan:
719             test-plan: '{project}-1node-openstack.txt'
720         - integration-patch-refspec:
721             branch: 'master'
722         - integration-jdk-version:
723             jdkversion: '{jre}'
724         - string:
725             name: OPENSTACK_BRANCH
726             default: '{openstack-branch}'
727             description: 'Openstack version to use with devstack'
728         - string:
729             name: ODL_ML2_DRIVER_REPO
730             default: 'https://github.com/openstack/networking-odl'
731             description: 'URL to fetch networking-odl driver'
732         - string:
733             name: ODL_ML2_VERSION
734             default: '{odl-ml2-version}'
735             description: 'Version of networking-odl to checkout from the repo'
736         - string:
737             name: ODL_ENABLE_L3_FWD
738             default: '{odl-enable-l3}'
739             description: 'Enable L3 FWD in ODL for createing br-ex'
740         - string:
741             name: ENABLE_OS_SERVICES
742             default: '{enable-openstack-services}'
743             description: 'comma seperated list of services to enable'
744         - string:
745             name: DISABLE_OS_SERVICES
746             default: '{disable-openstack-services}'
747             description: 'comma seperated list of services to enable'
748         - string:
749             name: TENANT_NETWORK_TYPE
750             default: '{tenant-network-type}'
751             description: 'Tenant Network Type supported by the implementation'
752     scm:
753         - integration-gerrit-scm:
754             credentials-id: '{ssh-credentials}'
755             basedir: 'test'
756             refspec: '$PATCHREFSPEC'
757             branch: 'master'
758
759     wrappers:
760         - build-timeout
761         - integration-jclouds-controller-devstack:
762             controller-vms: 1
763             openstack-vms: '{openstack-vms}'
764         - ssh-agent-credentials:
765             users:
766               - '{ssh-credentials}'
767
768     triggers:
769         - integration-csit-all
770
771     builders:
772         - integration-cleanup-workspace
773         - integration-install-robotframework
774         - inject:
775             properties-file: 'env.properties'
776         - integration-get-slave-addresses
777         - inject:
778             properties-file: 'slave_addresses.txt'
779         - integration-get-bundle-vars
780         - inject:
781             properties-file: 'bundle_vars.txt'
782         - integration-deploy-controller-run-test
783         - integration-deploy-openstack-run-test
784         - integration-cleanup-tmp
785
786     publishers:
787         - integration-robot:
788             unstable-if: 0.0
789             pass-if: 100.0
790         - archive:
791             artifacts: '*log*'
792         - email-notification:
793             email-prefix: '[{project}]'
794
795 - job-template:
796     name: '{project}-csit-3node-openstack-{openstack}-{functionality}-{stream}'
797     disabled: false
798
799     project-type: freestyle
800     node: dynamic_robot
801
802     logrotate:
803         daysToKeep: '{build-days-to-keep}'
804         numToKeep: '{build-num-to-keep}'
805         artifactDaysToKeep: '{build-artifact-days-to-keep}'
806         artifactNumToKeep: '{build-num-to-keep}'
807
808     parameters:
809         - project-parameter:
810             project: 'integration/test'
811         - integration-branch:
812             branch: '{branch}'
813         - integration-distribution-stream:
814             stream: '{stream}'
815         - integration-bundleurl:
816             bundleurl: 'last'
817         - integration-controller-features:
818             controller-features: 'odl-jolokia,{install-features}'
819         - integration-test-plan:
820             test-plan: '{project}-3node-openstack.txt'
821         - integration-patch-refspec:
822             branch: 'master'
823         - integration-jdk-version:
824             jdkversion: '{jre}'
825         - string:
826             name: OPENSTACK_BRANCH
827             default: '{openstack-branch}'
828             description: 'Openstack version to use with devstack'
829         - string:
830             name: ODL_ML2_DRIVER_REPO
831             default: 'https://github.com/openstack/networking-odl'
832             description: 'URL to fetch networking-odl driver'
833         - string:
834             name: ODL_ML2_VERSION
835             default: '{odl-ml2-version}'
836             description: 'Version of networking-odl to checkout from the repo'
837         - string:
838             name: ODL_ENABLE_L3_FWD
839             default: '{odl-enable-l3}'
840             description: 'Enable L3 FWD in ODL for createing br-ex'
841         - string:
842             name: ENABLE_HAPROXY_FOR_NEUTRON
843             default: '{enable-haproxy}'
844             description: 'Enable HAProxy for using neutron interface as HA'
845         - string:
846             name: ENABLE_OS_SERVICES
847             default: '{enable-openstack-services}'
848             description: 'comma seperated list of services to enable'
849         - string:
850             name: DISABLE_OS_SERVICES
851             default: '{disable-openstack-services}'
852             description: 'comma seperated list of services to enable'
853         - string:
854             name: TENANT_NETWORK_TYPE
855             default: '{tenant-network-type}'
856             description: 'Tenant Network Type supported by the implementation'
857     scm:
858         - integration-gerrit-scm:
859             credentials-id: '{ssh-credentials}'
860             basedir: 'test'
861             refspec: '$PATCHREFSPEC'
862             branch: 'master'
863
864     wrappers:
865         - build-timeout
866         - integration-jclouds-controller-devstack:
867             controller-vms: 3
868             openstack-vms: '{openstack-vms}'
869         - ssh-agent-credentials:
870             users:
871               - '{ssh-credentials}'
872
873     triggers:
874         - integration-csit-all
875
876     builders:
877         - integration-cleanup-workspace
878         - integration-install-robotframework
879         - inject:
880             properties-file: 'env.properties'
881         - integration-get-slave-addresses
882         - inject:
883             properties-file: 'slave_addresses.txt'
884         - integration-get-bundle-vars
885         - inject:
886             properties-file: 'bundle_vars.txt'
887         - integration-configure-clustering
888         - integration-start-cluster-run-test
889         - integration-deploy-openstack-run-test
890         - integration-cleanup-tmp
891
892     publishers:
893         - integration-robot:
894             unstable-if: 0.0
895             pass-if: 100.0
896         - archive:
897             artifacts: '*log*'
898         - email-notification:
899             email-prefix: '[{project}]'