Merge "Add stable/lithium jobs for snbi"
[releng/builder.git] / jjb / integration / integration-macros.yaml
1 - parameter:
2     name: integration-branch
3     parameters:
4         - string:
5             name: BRANCH
6             default: '{branch}'
7             description: 'GIT branch'
8
9 - parameter:
10     name: integration-bundleurl
11     parameters:
12         - string:
13             name: BUNDLEURL
14             default: '{bundleurl}'
15             description: 'URL to karaf distribution zip'
16
17 - parameter:
18     name: integration-controller-scope
19     parameters:
20         - string:
21             name: CONTROLLERSCOPE
22             default: '{controller-scope}'
23             description: 'Feature Only or Feature All test'
24
25 - parameter:
26     name: integration-controller-features
27     parameters:
28         - string:
29             name: CONTROLLERFEATURES
30             default: '{controller-features}'
31             description: 'Features to install in the controller separated by comma'
32
33 - parameter:
34     name: integration-test-plan
35     parameters:
36         - string:
37             name: TESTPLAN
38             default: '{test-plan}'
39             description:  'Test plan we will run'
40
41 - parameter:
42     name: integration-test-options
43     parameters:
44         - string:
45             name: TESTOPTIONS
46             default: '{test-options}'
47             description:  'Robot command options'
48
49 - parameter:
50     name: integration-patch-git-url
51     parameters:
52         - string:
53             name: PATCHGITURL
54             default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/$GERRIT_PROJECT'
55             description:  'Patch GIT URL (do not modify)'
56
57 - scm:
58     name: integration-gerrit-scm
59     scm:
60         - git:
61             credentials-id: '{credentials-id}'
62             url: '$PATCHGITURL'
63             basedir: '$GERRIT_PROJECT'
64             refspec: '$GERRIT_REFSPEC'
65             branches:
66                 - 'origin/{branch}'
67             skip-tag: true
68             choosing-strategy: 'gerrit'
69
70 - scm:
71     name: integration-git-scm
72     scm:
73         - git:
74             credentials-id: '{credentials-id}'
75             basedir: 'integration'
76             url: '$GIT_BASE'
77             refspec: ''
78             branches:
79                 - 'origin/{branch}'
80             skip-tag: true
81
82 - trigger:
83     name: integration-distribution-gerrit-trigger-patch-submitted
84     triggers:
85         - gerrit:
86             server-name: 'OpenDaylight'
87             trigger-on:
88                 - patchset-created-event:
89                     exclude-drafts: 'false'
90                     exclude-trivial-rebase: 'false'
91                     exclude-no-code-change: 'false'
92                 - draft-published-event
93                 - comment-added-contains-event:
94                     comment-contains-value: 'recheck'
95                 - comment-added-contains-event:
96                     comment-contains-value: 'reverify'
97             projects:
98               - project-compare-type: 'ANT'
99                 project-pattern: '{name}'
100                 branches:
101                   - branch-compare-type: 'ANT'
102                     branch-pattern: '**/{branch}'
103                 file-paths:
104                   - compare-type: 'ANT'
105                     pattern: 'pom.xml'
106                   - compare-type: 'ANT'
107                     pattern: 'distributions/**'
108                   - compare-type: 'ANT'
109                     pattern: 'features/**'
110                   - compare-type: 'ANT'
111                     pattern: 'feature-selector/**'
112
113 - trigger:
114     name: integration-distribution-gerrit-trigger-patch-merged
115     triggers:
116         - gerrit:
117             server-name: 'OpenDaylight'
118             trigger-on:
119                 - change-merged-event
120                 - comment-added-contains-event:
121                     comment-contains-value: 'remerge'
122             projects:
123               - project-compare-type: 'ANT'
124                 project-pattern: '{name}'
125                 branches:
126                   - branch-compare-type: 'ANT'
127                     branch-pattern: '**/{branch}'
128                 file-paths:
129                   - compare-type: 'ANT'
130                     pattern: 'pom.xml'
131                   - compare-type: 'ANT'
132                     pattern: 'distributions/**'
133                   - compare-type: 'ANT'
134                     pattern: 'features/**'
135                   - compare-type: 'ANT'
136                     pattern: 'feature-selector/**'
137
138 - trigger:
139     name: integration-test-gerrit-trigger-patch-submitted
140     triggers:
141         - gerrit:
142             server-name: 'OpenDaylight'
143             trigger-on:
144                 - patchset-created-event:
145                     exclude-drafts: 'false'
146                     exclude-trivial-rebase: 'false'
147                     exclude-no-code-change: 'false'
148                 - draft-published-event
149                 - comment-added-contains-event:
150                     comment-contains-value: 'recheck'
151                 - comment-added-contains-event:
152                     comment-contains-value: 'reverify'
153             projects:
154               - project-compare-type: 'ANT'
155                 project-pattern: '{name}'
156                 branches:
157                   - branch-compare-type: 'ANT'
158                     branch-pattern: '**/{branch}'
159                 file-paths:
160                   - compare-type: 'ANT'
161                     pattern: 'test/csit/suites/{project}/**'
162
163 - trigger:
164     name: integration-csit-gerrit-trigger-patch-submitted
165     triggers:
166         - gerrit:
167             server-name: 'OpenDaylight'
168             trigger-on:
169                 - patchset-created-event:
170                     exclude-drafts: 'false'
171                     exclude-trivial-rebase: 'false'
172                     exclude-no-code-change: 'false'
173                 - draft-published-event
174                 - comment-added-contains-event:
175                     comment-contains-value: 'recheck'
176                 - comment-added-contains-event:
177                     comment-contains-value: 'reverify'
178             projects:
179               - project-compare-type: 'ANT'
180                 project-pattern: '{name}'
181                 branches:
182                   - branch-compare-type: 'ANT'
183                     branch-pattern: '**/{branch}'
184                 file-paths:
185                   - compare-type: 'ANT'
186                     pattern: 'test/csit/**'
187
188 - trigger:
189     name: integration-csit-gerrit-trigger-patch-merged
190     triggers:
191         - gerrit:
192             server-name: 'OpenDaylight'
193             trigger-on:
194                 - change-merged-event
195                 - comment-added-contains-event:
196                     comment-contains-value: 'remerge'
197             projects:
198               - project-compare-type: 'ANT'
199                 project-pattern: '{name}'
200                 branches:
201                   - branch-compare-type: 'ANT'
202                     branch-pattern: '**/{branch}'
203                 file-paths:
204                   - compare-type: 'ANT'
205                     pattern: 'test/csit/**'
206
207 - wrapper:
208     name: integration-jclouds-controller-mininet
209     wrappers:
210       - jclouds:
211           instances:
212             - rk-c-el6-java:
213                 cloud-name: 'Rackspace DFW - Integration Dynamic Lab'
214                 count: '{controller-vms}'
215                 stop-on-terminate: False
216             - rk-c-el6-mininet:
217                 cloud-name: 'Rackspace DFW - Integration Dynamic Lab'
218                 count: '{mininet-vms}'
219                 stop-on-terminate: False
220
221 - wrapper:
222     name: integration-jclouds-controller-fedora-mininet
223     wrappers:
224       - jclouds:
225           instances:
226             - rk-c-el6-java:
227                 cloud-name: 'Rackspace DFW - Integration Dynamic Lab'
228                 count: '{controller-vms}'
229                 stop-on-terminate: False
230             - rk-f21-mininet:
231                 cloud-name: 'Rackspace DFW - Integration Dynamic Lab'
232                 count: '{mininet-vms}'
233                 stop-on-terminate: False
234
235
236 #################
237 # Shell Scripts #
238 #################
239
240 - builder:
241     name: integration-get-slave-addresses
242     builders:
243         - shell:
244             !include-raw include-raw-integration-get-slave-addresses.sh
245 - builder:
246     name: integration-get-bundle-vars
247     builders:
248         - shell:
249             !include-raw include-raw-integration-get-bundle-vars.sh
250
251 - builder:
252     name: integration-deploy-controller-run-test
253     builders:
254         - shell:
255             !include-raw include-raw-integration-deploy-controller-run-test.sh
256 - builder:
257     name: integration-deploy-controller
258     builders:
259         - shell:
260             !include-raw include-raw-integration-deploy-controller.sh
261
262
263 - builder:
264     name: integration-configure-clustering
265     builders:
266         - shell:
267             !include-raw include-raw-integration-configure-clustering.sh
268
269 - builder:
270     name: integration-start-cluster-run-test
271     builders:
272         - shell:
273             !include-raw include-raw-integration-start-cluster-run-test.sh
274
275 - builder:
276     name: integration-deploy-controller-offline
277     builders:
278         - shell:
279             !include-raw include-raw-integration-deploy-controller-offline.sh
280
281 - builder:
282     name: integration-get-bundle-url
283     builders:
284         - shell:
285             !include-raw include-raw-integration-get-bundle-url.sh
286
287 ##############
288 # Publishers #
289 ##############
290
291 - publisher:
292     name: integration-robot
293     publishers:
294         - robot:
295             output-path: ''
296             other-files: ''
297             unstable-threshold: '{unstable-if}'
298             pass-threshold: '{pass-if}'
299             only-critical: false