1 # REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
2 # Otherwise this file will be automatically overwritten by the template
5 # ODL Releng build templates
9 - 'coretutorials-verify-{stream}'
10 - 'coretutorials-merge-{stream}'
11 - 'coretutorials-periodic-{stream}'
12 - 'coretutorials-distribution-{stream}'
13 - 'coretutorials-integration-{stream}'
14 - 'coretutorials-sonar'
15 - 'coretutorials-clm-{stream}'
16 - 'coretutorials-validate-autorelease-{stream}'
19 # stream: release stream (eg. stable-lithium or beryllium)
20 # branch: git branch (eg. stable/lithium or master)
27 disable_autorelease: True
29 branch: 'stable/beryllium'
33 disable_autorelease: True
35 branch: 'stable/lithium'
39 disable_autorelease: True
41 project: 'coretutorials'
43 # For the Job templates below replace instances of:
44 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
45 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
46 # MAVEN_GOALS with your maven goals to build
47 # MAVEN_OPTS with your maven options to build
50 name: 'coretutorials-verify-{stream}'
52 # Job template for ODL verify jobs
54 # The purpose of this job template is to setup a ODL verify job
57 # stream: release stream (eg. stable-lithium or beryllium)
58 # branch: git branch (eg. stable/lithium or master)
75 daysToKeep: '{build-days-to-keep}'
76 numToKeep: '{build-num-to-keep}'
77 artifactDaysToKeep: '{build-artifact-days-to-keep}'
78 artifactNumToKeep: '{build-artifact-num-to-keep}'
85 - gerrit-refspec-parameter:
86 refspec: 'refs/heads/{branch}'
90 credentials-id: '{ssh-credentials}'
91 refspec: '$GERRIT_REFSPEC'
92 choosing-strategy: 'gerrit'
96 - ssh-agent-credentials:
101 - gerrit-trigger-patch-submitted:
102 name: 'coretutorials'
106 - wipe-org-opendaylight-repo
107 - jacoco-nojava-workaround
108 - provide-maven-settings:
109 global-settings-file: '{odl-global-settings}'
110 settings-file: '{coretutorials-settings}'
112 maven-version: '{mvn33}'
114 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dstream={stream}'
116 - '-Xmx1024m -XX:MaxPermSize=256m'
117 settings: '{coretutorials-settings}'
118 global-settings: '{odl-global-settings}'
122 - email-notification:
123 email-prefix: '[coretutorials]'
127 name: 'coretutorials-merge-{stream}'
129 # Job template for ODL merge jobs
131 # The purpose of this job template is to setup a ODL merge job
132 # and deploy artifacts to Nexus.
134 # Required Variables:
135 # stream: release stream (eg. stable-lithium or beryllium)
136 # branch: git branch (eg. stable/lithium or master)
143 daysToKeep: '{build-days-to-keep}'
144 numToKeep: '{build-num-to-keep}'
145 artifactDaysToKeep: '{build-artifact-days-to-keep}'
146 artifactNumToKeep: '{build-artifact-num-to-keep}'
153 - gerrit-refspec-parameter:
154 refspec: 'refs/heads/{branch}'
157 - gerrit-trigger-scm:
158 credentials-id: '{ssh-credentials}'
160 choosing-strategy: 'default'
164 - ssh-agent-credentials:
166 - '{ssh-credentials}'
170 - gerrit-trigger-patch-merged:
171 name: 'coretutorials'
175 - wipe-org-opendaylight-repo
176 - jacoco-nojava-workaround
177 - provide-maven-settings:
178 global-settings-file: '{odl-global-settings}'
179 settings-file: '{coretutorials-settings}'
182 maven-name: '{mvn33}'
184 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dmerge -Dstream={stream}'
185 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
186 settings: '{coretutorials-settings}'
187 global-settings: '{odl-global-settings}'
188 post-step-run-condition: UNSTABLE
192 condition-kind: file-exists
193 condition-filename: deploy-site.xml
194 condition-basedir: workspace
196 # The strategy here is intentional to run Maven site:deploy twice
197 # once using regular pom.xml to produce a staged-site which is
198 # then used by deploy-site.xml to push to Nexus. This is a
199 # workaround to Maven Site's default linking code which creates
200 # incorrect URLs for sites due to auto-detection assuming your
201 # project is configured in a certain way which ODL is not.
204 maven-version: '{mvn33}'
206 goals: 'site:deploy -Dstream={stream}'
209 settings: '{coretutorials-settings}'
210 global-settings: '{odl-global-settings}'
212 maven-version: '{mvn33}'
214 goals: 'site:deploy -Dstream={stream}'
217 settings: '{coretutorials-settings}'
218 global-settings: '{odl-global-settings}'
225 artifacts: '**/target/surefire-reports/*-output.txt, '
226 - email-notification:
227 email-prefix: '[coretutorials]'
231 deploy-unstable: false
235 name: 'coretutorials-periodic-{stream}'
236 # Temporarily disable until Rackspace networking issues are resolved
239 # Job template for periodic builders
241 # The purpose of this job template is to setup a periodic
244 # Required Variables:
245 # stream: release stream (eg. stable-lithium or beryllium)
246 # branch: git branch (eg. stable/lithium or master)
253 daysToKeep: '{build-days-to-keep}'
254 numToKeep: '{build-num-to-keep}'
255 artifactDaysToKeep: '{build-artifact-days-to-keep}'
256 artifactNumToKeep: '{build-artifact-num-to-keep}'
264 credentials-id: '{ssh-credentials}'
270 - ssh-agent-credentials:
272 - '{ssh-credentials}'
278 - wipe-org-opendaylight-repo
279 - jacoco-nojava-workaround
280 - provide-maven-settings:
281 global-settings-file: '{odl-global-settings}'
282 settings-file: '{coretutorials-settings}'
285 maven-name: '{mvn33}'
287 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
288 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
289 settings: '{coretutorials-settings}'
290 global-settings: '{odl-global-settings}'
296 - email-notification:
297 email-prefix: '[coretutorials]'
301 name: 'coretutorials-distribution-{stream}'
303 # Required variables:
304 # stream: release stream (eg. stable-lithium or beryllium)
305 # branch: git branch (eg. stable/lithium or master)
312 daysToKeep: '{build-days-to-keep}'
313 numToKeep: '{build-num-to-keep}'
314 artifactDaysToKeep: '{build-artifact-days-to-keep}'
315 artifactNumToKeep: '{build-artifact-num-to-keep}'
319 project: 'integration/distribution'
323 credentials-id: '{ssh-credentials}'
329 - ssh-agent-credentials:
331 - '{ssh-credentials}'
335 jobs: '{project}-merge-{stream}'
339 - wipe-org-opendaylight-repo
340 - provide-maven-settings:
341 global-settings-file: '{odl-global-settings}'
342 settings-file: '{coretutorials-settings}'
345 maven-name: '{mvn33}'
347 goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
348 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
349 settings: '{integration-settings}'
350 global-settings: '{odl-global-settings}'
353 - email-notification:
354 email-prefix: '[{project}]'
358 deploy-unstable: false
361 name: 'coretutorials-integration-{stream}'
362 # Temporarily disable this job until Rackspace networking issues are
367 # Job template for ODL integration verify jobs
369 # This is similar to a normal verify job, but it runs
370 # when a project that's a dependency of your project
371 # is successfully built.
373 # Required Variables:
374 # stream: release stream (eg. stable-lithium or beryllium)
375 # branch: git branch (eg. stable/lithium or master)
382 daysToKeep: '{build-days-to-keep}'
383 numToKeep: '{build-num-to-keep}'
384 artifactDaysToKeep: '{build-artifact-days-to-keep}'
385 artifactNumToKeep: '{build-artifact-num-to-keep}'
393 credentials-id: '{ssh-credentials}'
399 - ssh-agent-credentials:
401 - '{ssh-credentials}'
405 jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
409 - wipe-org-opendaylight-repo
410 - jacoco-nojava-workaround
411 - provide-maven-settings:
412 global-settings-file: '{odl-global-settings}'
413 settings-file: '{coretutorials-settings}'
416 maven-name: '{mvn33}'
418 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
419 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
420 settings: '{coretutorials-settings}'
421 global-settings: '{odl-global-settings}'
427 - email-notification:
428 email-prefix: '[coretutorials] [odlparent] [yangtools] [controller]'
432 name: 'coretutorials-sonar'
433 # Temporarily disable until Rackspace networking issues are resolved
443 artifactDaysToKeep: '1'
444 artifactNumToKeep: '1'
452 credentials-id: '{ssh-credentials}'
458 - ssh-agent-credentials:
460 - '{ssh-credentials}'
464 - gerrit-trigger-patch-sonar:
465 name: 'coretutorials'
468 - wipe-org-opendaylight-repo
469 - jacoco-nojava-workaround
470 - provide-maven-settings:
471 global-settings-file: '{odl-global-settings}'
472 settings-file: '{coretutorials-settings}'
475 maven-name: '{mvn33}'
477 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dsonar'
478 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
479 settings: '{coretutorials-settings}'
480 global-settings: '{odl-global-settings}'
488 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
489 - email-notification:
490 email-prefix: '[coretutorials]'
494 name: 'coretutorials-clm-{stream}'
495 # Temporarily disable until Rackspace networking issues are resolved
503 daysToKeep: '{build-days-to-keep}'
504 numToKeep: '{build-num-to-keep}'
505 artifactDaysToKeep: '{build-artifact-days-to-keep}'
506 artifactNumToKeep: '{build-artifact-num-to-keep}'
514 credentials-id: '{ssh-credentials}'
520 - ssh-agent-credentials:
522 - '{ssh-credentials}'
528 - wipe-org-opendaylight-repo
529 - provide-maven-settings:
530 global-settings-file: '{odl-global-settings}'
531 settings-file: '{coretutorials-settings}'
534 maven-name: '{mvn33}'
536 goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -Djenkins -DskipTests=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
537 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
538 settings: '{coretutorials-settings}'
539 global-settings: '{odl-global-settings}'
542 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
544 application-name: coretutorials
547 - email-notification:
548 email-prefix: '[coretutorials]'
551 name: 'coretutorials-validate-autorelease-{stream}'
552 disabled: '{obj:disable_autorelease}'
560 daysToKeep: '{build-days-to-keep}'
561 numToKeep: '{build-num-to-keep}'
562 artifactDaysToKeep: '{build-artifact-days-to-keep}'
563 artifactNumToKeep: '{build-artifact-num-to-keep}'
570 - autorelease-release-tag:
571 release-tag: 'validate'
572 - autorelease-release-branch:
573 release-branch: '{branch}'
574 - autorelease-release-datestamp:
579 url: 'https://git.opendaylight.org/gerrit/releng/autorelease'
588 - autorelease-build-timeout
589 - ssh-agent-credentials:
591 - '{ssh-credentials}'
595 server-name: 'OpenDaylight'
597 - patchset-created-event:
598 exclude-drafts: 'false'
599 exclude-trivial-rebase: 'false'
600 exclude-no-code-change: 'false'
601 - draft-published-event
602 - comment-added-contains-event:
603 comment-contains-value: 'recheck'
604 - comment-added-contains-event:
605 comment-contains-value: 'reverify'
606 - comment-added-contains-event:
607 comment-contains-value: 'revalidate'
609 - project-compare-type: 'ANT'
610 project-pattern: 'coretutorials'
612 - branch-compare-type: 'ANT'
613 branch-pattern: '**/{branch}'
616 - wipe-org-opendaylight-repo
617 - jacoco-nojava-workaround
618 - autorelease-checkout-gerrit-patch
619 - autorelease-generate-taglist
620 - autorelease-generate-release-patches
622 maven-version: '{mvn33}'
623 pom: validate-pom.xml
624 goals: 'clean install -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
627 settings: '{autorelease-settings}'
628 global-settings: '{odl-global-settings}'
631 maven-name: '{mvn33}'
633 goals: 'clean validate -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
634 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
635 settings: '{autorelease-settings}'
636 global-settings: '{odl-global-settings}'
637 automatic-archiving: false
638 post-step-run-condition: UNSTABLE
641 - shell: "./scripts/list-project-dependencies.sh"
642 - autorelease-sys-stats
647 - email-notification:
648 email-prefix: '[autorelease] [coretutorials]'