blob: ed679142e635b15aacc1b2955963598d2750736a [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'
Brian O'Connor9fbe7722017-10-27 12:44:04 -0700334
335 jobs:
336 - '{project-name}-{stream}-verify'
Yuta HIGUCHI02e46d32017-10-31 10:17:47 -0700337
338- project:
Ray Milkey83d912a2017-11-01 13:49:31 -0700339 name: onos-gui
340 project-name: onos-gui
Ray Milkey24fe1ee2017-11-01 13:59:07 -0700341 project: onos
Ray Milkey83d912a2017-11-01 13:49:31 -0700342
343 build-timeout: '1800'
344 build-node: 'ubuntu16.04-basebuild-8c-15g'
345
346 stream:
347 - 'master'
348 - 'onos-1.10'
349 - 'onos-1.11'
350
351 jobs:
352 - 'onos-gui-{stream}-verify'
353
354- project:
Yuta HIGUCHI02e46d32017-10-31 10:17:47 -0700355 name: onos-yang-tools
356 project-name: onos-yang-tools
357 project: onos-yang-tools
358
359 build-timeout: '1800'
360 build-node: 'ubuntu16.04-basebuild-8c-15g'
361
362 stream:
363 - 'master'
364
365 jobs:
366 - 'onos-yang-tools-{stream}-verify'
Ray Milkey8e462202017-11-02 10:18:37 -0700367
368- project:
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800369 name: onos-app-samples
370 project-name: onos-app-samples
371 project: onos-app-samples
372
373 build-timeout: '1800'
374 build-node: 'ubuntu16.04-basebuild-8c-15g'
375
376 stream:
377 - 'master'
378
379 jobs:
380 - 'onos-app-samples-{stream}-verify'
381
Yuta HIGUCHI1ac83232017-11-17 16:37:57 -0800382- project:
383 name: onos-loxi
384 project-name: onos-loxi
385 project: onos-loxi
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800386
Yuta HIGUCHI1ac83232017-11-17 16:37:57 -0800387 build-timeout: '1800'
388 build-node: 'ubuntu16.04-basebuild-8c-15g'
389
390 stream:
391 - 'master'
392
393 jobs:
394 - 'onos-loxi-{stream}-verify'
Yuta HIGUCHI28821fd2017-11-17 16:11:19 -0800395
396- project:
Ray Milkey8e462202017-11-02 10:18:37 -0700397 name: onos-release
398 project-name: onos-release
399 project: onos
400
401 build-timeout: '1800'
402 build-node: 'ubuntu16.04-basebuild-8c-15g'
403
404 stream:
405 - 'master'
406
407 jobs:
408 - 'onos-{stream}-release-build-verify'
Ray Milkeyd9f73662017-11-06 10:29:51 -0800409
410- project:
411 name: onos-maven-verify
412 project-name: onos-maven-verify
413 project: onos
414
415 build-timeout: '1800'
416 build-node: 'ubuntu16.04-basebuild-8c-15g'
417
418 stream:
419 - 'master'
420
421 jobs:
422 - 'onos-{stream}-maven-verify'
Ray Milkey20d22522017-11-08 10:55:52 -0800423
424- project:
425 name: onos-sonar
426 project-name: onos-sonar
427 project: onos
428
429 build-timeout: '1800'
430 build-node: 'ubuntu16.04-basebuild-8c-15g'
431
432 stream:
433 - 'master'
434
435 jobs:
436 - 'onos-{stream}-sonar'
437
Ray Milkey2afc4a52017-11-17 11:01:38 -0800438- project:
439 name: onos-release-build
440 project-name: onos-release-build
441 project: onos
442
443 build-timeout: '1800'
444 build-node: 'ubuntu16.04-basebuild-8c-15g'
445
Ray Milkey4309d9b2017-11-17 13:41:46 -0800446 stream: 'master'
Ray Milkey2afc4a52017-11-17 11:01:38 -0800447
448 jobs:
449 - 'onos-release-build'