blob: df36153b00a9dc8f88e5a0424d99da6e1eb8855f [file] [log] [blame]
Brian O'Connor9fbe7722017-10-27 12:44:04 -07001---
2
3- job_boiler_plate: &job_boiler_plate
4 name: job-boiler-plate
5
6 project-type: freestyle
7 node: '{build-node}'
8
9 ######################
10 # Default parameters #
11 ######################
12
13 branch: master
14 submodule-recursive: true
15 git-url: '$GIT_URL/$GERRIT_PROJECT'
16
17 #####################
18 # Job Configuration #
19 #####################
20
21 properties:
22 - lf-infra-properties:
23 project: '{project}'
24 build-days-to-keep: '{build-days-to-keep}'
25 #- github:
26 # url: '{git-url}/{github-org}/{project}'
27
28 parameters:
29 - lf-infra-parameters:
30 project: '{project}'
Ray Milkeye0b54ef2017-10-31 16:17:34 -070031 branch: '{stream}'
Brian O'Connor9fbe7722017-10-27 12:44:04 -070032 stream: '{stream}'
33 lftools-version: '{lftools-version}'
34
35 wrappers:
36 - lf-infra-wrappers:
37 build-timeout: '{build-timeout}'
38 jenkins-ssh-credential: '{jenkins-ssh-credential}'
39
40
41- verify_boiler_plate: &verify_boiler_plate
42 name: verify_boiler_plate
43
44 concurrent: true
45
46 scm:
Brian O'Connore78aff62017-10-30 14:08:51 -070047 - lf-infra-gerrit-scm:
48 git-url: '{git-url}'
Brian O'Connor9fbe7722017-10-27 12:44:04 -070049 refspec: '$GERRIT_REFSPEC'
50 branch: '$GERRIT_BRANCH'
51 submodule-recursive: '{submodule-recursive}'
Brian O'Connore78aff62017-10-30 14:08:51 -070052 choosing-strategy: gerrit
Brian O'Connor9fbe7722017-10-27 12:44:04 -070053 jenkins-ssh-credential: '{jenkins-ssh-credential}'
54
55 triggers:
56 - gerrit:
57 #server-name: '{gerrit-server-name}'
58 server-name: 'ONOS Project Gerrit'
59 #trigger-on: '{obj:gerrit_verify_triggers}'
60 trigger-on:
61 - patchset-created-event:
62 exclude-drafts: true
63 exclude-trivial-rebase: false
64 exclude-no-code-change: true
65 - draft-published-event
Brian O'Connoredd87412017-10-30 19:27:08 -070066 - comment-added-contains-event:
67 comment-contains-value: '(?i)^.*recheck$'
Brian O'Connor9fbe7722017-10-27 12:44:04 -070068 projects:
69 - project-compare-type: PLAIN
Ray Milkey20beeae2017-10-31 15:26:10 -070070 project-pattern: '{project}'
Brian O'Connor9fbe7722017-10-27 12:44:04 -070071 branches:
72 - branch-compare-type: ANT
Ray Milkeye0b54ef2017-10-31 16:17:34 -070073 branch-pattern: '**/{stream}'
Ray Milkeyc0c94f52017-10-30 17:36:14 -070074 #file-paths: '{obj:gerrit_trigger_file_paths}'
Brian O'Connor9fbe7722017-10-27 12:44:04 -070075
Ray Milkey8e462202017-11-02 10:18:37 -070076- daily_boiler_plate: &daily_boiler_plate
77 name: daily_boiler_plate
78
79 concurrent: true
80
81 scm:
82 - lf-infra-gerrit-scm:
83 git-url: '{git-url}'
84 refspec: '$GERRIT_REFSPEC'
85 branch: '$GERRIT_BRANCH'
86 submodule-recursive: '{submodule-recursive}'
87 choosing-strategy: gerrit
88 jenkins-ssh-credential: '{jenkins-ssh-credential}'
89
90 triggers:
91 - timed: '@daily'
92
Ray Milkeyd9f73662017-11-06 10:29:51 -080093- hourly_boiler_plate: &hourly_boiler_plate
94 name: hourly_boiler_plate
95
96 concurrent: true
97
98 scm:
99 - lf-infra-gerrit-scm:
100 git-url: '{git-url}'
101 refspec: '$GERRIT_REFSPEC'
102 branch: '$GERRIT_BRANCH'
103 submodule-recursive: '{submodule-recursive}'
104 choosing-strategy: gerrit
105 jenkins-ssh-credential: '{jenkins-ssh-credential}'
106
107 triggers:
108 - timed: '@hourly'
109
Ray Milkey4309d9b2017-11-17 13:41:46 -0800110- release_build_boiler_plate: &release_build_boiler_plate
111 name: release_build_boiler_plate
112
113 concurrent: true
114
115 parameters:
116 - lf-infra-parameters:
117 project: '{project}'
118 branch: '{stream}'
119 stream: '{stream}'
120 lftools-version: '{lftools-version}'
121
122 - string:
123 name: ONOS_VERSION
124 default: '1.12'
125 description: 'Version of ONOS to build'
126
127 - string:
128 name: ONOS_NEXT_VERSION
129 default: '1.13.0-SNAPSHOT'
130 description: 'Version of ONOS to build'
131
132 scm:
133 - lf-infra-gerrit-scm:
134 git-url: '{git-url}'
135 refspec: '$GERRIT_REFSPEC'
136 branch: '$GERRIT_BRANCH'
137 submodule-recursive: '{submodule-recursive}'
138 choosing-strategy: gerrit
139 jenkins-ssh-credential: '{jenkins-ssh-credential}'
140
Brian O'Connor9fbe7722017-10-27 12:44:04 -0700141- job-template:
142 #default name is global
143 name: '{project-name}-{stream}-verify'
144
145 # Job template for Java verify jobs
146 #
147 # The purpose of this job templte is to run "maven clean install" for
148 # projects using this template.
149 #
150 # Required Variables:
151 # branch: git branch (eg. master)
152
153 <<: *job_boiler_plate
154 # yamllint disable-line rule:key-duplicates
155 <<: *verify_boiler_plate
156
157 builders:
158 #put shell scripts in file then make sure shell check is installed on verify vms
Ray Milkey7aa43462017-10-30 16:15:23 -0700159 - shell: !include-raw-escape: onos-verify.sh
Yuta HIGUCHI02e46d32017-10-31 10:17:47 -0700160 # JJB 1.6.2 does not support parameter expansion on filename?
161 #- shell: !include-raw-escape: {project-name}-verify.sh
162
163# workaround for lack of parameter expansion support in shell: (see above)
164- job-template:
165 #default name is global
166 name: 'onos-yang-tools-{stream}-verify'
167
168 # Job template for Java verify jobs
169 #
170 # The purpose of this job templte is to run "maven clean install" for
171 # projects using this template.
172 #
173 # Required Variables:
174 # branch: git branch (eg. master)
175
176 <<: *job_boiler_plate
177 # yamllint disable-line rule:key-duplicates
178 <<: *verify_boiler_plate
179
180 builders:
181 #put shell scripts in file then make sure shell check is installed on verify vms
182 - shell: !include-raw-escape: onos-yang-tools-verify.sh
183
Ray Milkey83d912a2017-11-01 13:49:31 -0700184# workaround for lack of parameter expansion support in shell: (see above)
185- job-template:
186 #default name is global
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800187 name: 'onos-app-samples-{stream}-verify'
188
189 # Job template for Java verify jobs
190 #
191 # The purpose of this job templte is to run "maven clean install" for
192 # projects using this template.
193 #
194 # Required Variables:
195 # branch: git branch (eg. master)
196
197 <<: *job_boiler_plate
198 # yamllint disable-line rule:key-duplicates
199 <<: *verify_boiler_plate
200
201 builders:
202 #put shell scripts in file then make sure shell check is installed on verify vms
203 - shell: !include-raw-escape: onos-app-samples-verify.sh
204
Yuta HIGUCHI1ac83232017-11-17 16:37:57 -0800205# workaround for lack of parameter expansion support in shell: (see above)
206- job-template:
207 #default name is global
208 name: 'onos-loxi-{stream}-verify'
209
210 # Job template for Java verify jobs
211 #
212 # The purpose of this job templte is to run "maven clean install" for
213 # projects using this template.
214 #
215 # Required Variables:
216 # branch: git branch (eg. master)
217
218 <<: *job_boiler_plate
219 # yamllint disable-line rule:key-duplicates
220 <<: *verify_boiler_plate
221
222 builders:
223 #put shell scripts in file then make sure shell check is installed on verify vms
224 - shell: !include-raw-escape: onos-loxi-verify.sh
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800225
226# workaround for lack of parameter expansion support in shell: (see above)
227- job-template:
228 #default name is global
Ray Milkey83d912a2017-11-01 13:49:31 -0700229 name: 'onos-gui-{stream}-verify'
230
231 # Job template for Java verify jobs
232 #
233 # The purpose of this job templte is to run "maven clean install" for
234 # projects using this template.
235 #
236 # Required Variables:
237 # branch: git branch (eg. master)
238
239 <<: *job_boiler_plate
240 # yamllint disable-line rule:key-duplicates
241 <<: *verify_boiler_plate
242
243 builders:
244 #put shell scripts in file then make sure shell check is installed on verify vms
245 - shell: !include-raw-escape: onos-gui-verify.sh
246
Ray Milkey8e462202017-11-02 10:18:37 -0700247- job-template:
248 #default name is global
249 name: 'onos-{stream}-release-build-verify'
250
251 # Job template for Java release check jobs
252 #
253
254 <<: *job_boiler_plate
255 # yamllint disable-line rule:key-duplicates
Ray Milkey29c54342017-11-06 16:43:01 -0800256 <<: *daily_boiler_plate
Ray Milkey8e462202017-11-02 10:18:37 -0700257
258 builders:
Ray Milkey8fae9a72017-11-17 10:03:54 -0800259
Ray Milkey8e462202017-11-02 10:18:37 -0700260 #put shell scripts in file then make sure shell check is installed on verify vms
261 - shell: !include-raw-escape: onos-release-build-verify.sh
262 # JJB 1.6.2 does not support parameter expansion on filename?
263 #- shell: !include-raw-escape: {project-name}-verify.sh
264
Ray Milkeyd9f73662017-11-06 10:29:51 -0800265- job-template:
266 #default name is global
Ray Milkey2afc4a52017-11-17 11:01:38 -0800267 name: 'onos-release-build'
268
269 # Job template for Java release jobs
270 #
271
272 <<: *job_boiler_plate
273 # yamllint disable-line rule:key-duplicates
Ray Milkey4309d9b2017-11-17 13:41:46 -0800274 <<: *release_build_boiler_plate
Ray Milkey2afc4a52017-11-17 11:01:38 -0800275
276 builders:
277 - config-file-provider:
278 files:
279 - file-id: 'onos-build-credentials'
280 target: 'onos-build-credentials'
281 variable: 'CREDENTIALS_FILE'
Ray Milkeye8fd4f02017-11-17 14:54:18 -0800282 - file-id: 'buck-config-local'
283 target: '.buckconfig.local'
284 variable: 'BUCK_CONFIG_FILE'
285 - file-id: 'secring.gpg.b64'
286 target: 'secring.gpg.b64'
287 variable: 'GPG_B64_FILE'
Ray Milkey2afc4a52017-11-17 11:01:38 -0800288
289 #put shell scripts in file then make sure shell check is installed on verify vms
290 - shell: !include-raw-escape: onos-release-build.sh
291 # JJB 1.6.2 does not support parameter expansion on filename?
292 #- shell: !include-raw-escape: {project-name}-verify.sh
293
294- job-template:
295 #default name is global
Ray Milkeyd9f73662017-11-06 10:29:51 -0800296 name: 'onos-{stream}-maven-verify'
297
298 <<: *job_boiler_plate
299 # yamllint disable-line rule:key-duplicates
Ray Milkey4502aae2017-11-06 13:02:45 -0800300 <<: *hourly_boiler_plate
Ray Milkeyd9f73662017-11-06 10:29:51 -0800301
302 builders:
303 #put shell scripts in file then make sure shell check is installed on verify vms
304 - shell: !include-raw-escape: onos-maven-verify.sh
305 # JJB 1.6.2 does not support parameter expansion on filename?
306 #- shell: !include-raw-escape: {project-name}-verify.sh
Brian O'Connor9fbe7722017-10-27 12:44:04 -0700307
Ray Milkey20d22522017-11-08 10:55:52 -0800308- job-template:
309 #default name is global
310 name: 'onos-{stream}-sonar'
311
312 <<: *job_boiler_plate
313 # yamllint disable-line rule:key-duplicates
314 <<: *daily_boiler_plate
315
316 builders:
317 #put shell scripts in file then make sure shell check is installed on verify vms
318 - shell: !include-raw-escape: onos-sonar.sh
319 # JJB 1.6.2 does not support parameter expansion on filename?
320 #- shell: !include-raw-escape: {project-name}-verify.sh
321
Brian O'Connor9fbe7722017-10-27 12:44:04 -0700322- project:
323 name: onos
324 project-name: onos
325 project: onos
326
327 build-timeout: '1800'
328 build-node: 'ubuntu16.04-basebuild-8c-15g'
329
330 stream:
331 - 'master'
Ray Milkey1bc13772017-10-31 15:57:17 -0700332 - 'onos-1.10'
333 - 'onos-1.11'
Ray Milkey47d4f722017-11-21 09:36:37 -0800334 - 'onos-1.12'
Brian O'Connor9fbe7722017-10-27 12:44:04 -0700335
336 jobs:
337 - '{project-name}-{stream}-verify'
Yuta HIGUCHI02e46d32017-10-31 10:17:47 -0700338
339- project:
Ray Milkey83d912a2017-11-01 13:49:31 -0700340 name: onos-gui
341 project-name: onos-gui
Ray Milkey24fe1ee2017-11-01 13:59:07 -0700342 project: onos
Ray Milkey83d912a2017-11-01 13:49:31 -0700343
344 build-timeout: '1800'
345 build-node: 'ubuntu16.04-basebuild-8c-15g'
346
347 stream:
348 - 'master'
349 - 'onos-1.10'
350 - 'onos-1.11'
Ray Milkey47d4f722017-11-21 09:36:37 -0800351 - 'onos-1.12'
Ray Milkey83d912a2017-11-01 13:49:31 -0700352
353 jobs:
354 - 'onos-gui-{stream}-verify'
355
356- project:
Yuta HIGUCHI02e46d32017-10-31 10:17:47 -0700357 name: onos-yang-tools
358 project-name: onos-yang-tools
359 project: onos-yang-tools
360
361 build-timeout: '1800'
362 build-node: 'ubuntu16.04-basebuild-8c-15g'
363
364 stream:
365 - 'master'
366
367 jobs:
368 - 'onos-yang-tools-{stream}-verify'
Ray Milkey8e462202017-11-02 10:18:37 -0700369
370- project:
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800371 name: onos-app-samples
372 project-name: onos-app-samples
373 project: onos-app-samples
374
375 build-timeout: '1800'
376 build-node: 'ubuntu16.04-basebuild-8c-15g'
377
378 stream:
379 - 'master'
380
381 jobs:
382 - 'onos-app-samples-{stream}-verify'
383
Yuta HIGUCHI1ac83232017-11-17 16:37:57 -0800384- project:
385 name: onos-loxi
386 project-name: onos-loxi
387 project: onos-loxi
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800388
Yuta HIGUCHI1ac83232017-11-17 16:37:57 -0800389 build-timeout: '1800'
390 build-node: 'ubuntu16.04-basebuild-8c-15g'
391
392 stream:
393 - 'master'
394
395 jobs:
396 - 'onos-loxi-{stream}-verify'
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800397
398- project:
Ray Milkey8e462202017-11-02 10:18:37 -0700399 name: onos-release
400 project-name: onos-release
401 project: onos
402
403 build-timeout: '1800'
404 build-node: 'ubuntu16.04-basebuild-8c-15g'
405
406 stream:
407 - 'master'
408
409 jobs:
410 - 'onos-{stream}-release-build-verify'
Ray Milkeyd9f73662017-11-06 10:29:51 -0800411
412- project:
413 name: onos-maven-verify
414 project-name: onos-maven-verify
415 project: onos
416
417 build-timeout: '1800'
418 build-node: 'ubuntu16.04-basebuild-8c-15g'
419
420 stream:
421 - 'master'
422
423 jobs:
424 - 'onos-{stream}-maven-verify'
Ray Milkey20d22522017-11-08 10:55:52 -0800425
426- project:
427 name: onos-sonar
428 project-name: onos-sonar
429 project: onos
430
431 build-timeout: '1800'
432 build-node: 'ubuntu16.04-basebuild-8c-15g'
433
434 stream:
435 - 'master'
436
437 jobs:
438 - 'onos-{stream}-sonar'
439
Ray Milkey2afc4a52017-11-17 11:01:38 -0800440- project:
441 name: onos-release-build
442 project-name: onos-release-build
443 project: onos
444
445 build-timeout: '1800'
446 build-node: 'ubuntu16.04-basebuild-8c-15g'
447
Ray Milkey4309d9b2017-11-17 13:41:46 -0800448 stream: 'master'
Ray Milkey2afc4a52017-11-17 11:01:38 -0800449
450 jobs:
451 - 'onos-release-build'