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/lithium'
33 disable_autorelease: True
35 project: 'coretutorials'
37 # For the Job templates below replace instances of:
38 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
39 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
40 # MAVEN_GOALS with your maven goals to build
41 # MAVEN_OPTS with your maven options to build
44 name: 'coretutorials-verify-{stream}'
46 # Job template for ODL verify jobs
48 # The purpose of this job template is to setup a ODL verify job
51 # stream: release stream (eg. stable-lithium or beryllium)
52 # branch: git branch (eg. stable/lithium or master)
69 daysToKeep: '{build-days-to-keep}'
70 numToKeep: '{build-num-to-keep}'
71 artifactDaysToKeep: '{build-artifact-days-to-keep}'
72 artifactNumToKeep: '{build-artifact-num-to-keep}'
79 - gerrit-refspec-parameter:
80 refspec: 'refs/heads/{branch}'
84 credentials-id: '{ssh-credentials}'
85 refspec: '$GERRIT_REFSPEC'
86 choosing-strategy: 'gerrit'
90 - ssh-agent-credentials:
95 - gerrit-trigger-patch-submitted:
100 - wipe-org-opendaylight-repo
101 - jacoco-nojava-workaround
102 - provide-maven-settings:
103 global-settings-file: '{odl-global-settings}'
104 settings-file: '{coretutorials-settings}'
106 maven-version: '{mvn33}'
108 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dstream={stream}'
110 - '-Xmx1024m -XX:MaxPermSize=256m'
111 settings: '{coretutorials-settings}'
112 global-settings: '{odl-global-settings}'
116 - email-notification:
117 email-prefix: '[coretutorials]'
121 name: 'coretutorials-merge-{stream}'
123 # Job template for ODL merge jobs
125 # The purpose of this job template is to setup a ODL merge job
126 # and deploy artifacts to Nexus.
128 # Required Variables:
129 # stream: release stream (eg. stable-lithium or beryllium)
130 # branch: git branch (eg. stable/lithium or master)
137 daysToKeep: '{build-days-to-keep}'
138 numToKeep: '{build-num-to-keep}'
139 artifactDaysToKeep: '{build-artifact-days-to-keep}'
140 artifactNumToKeep: '{build-artifact-num-to-keep}'
147 - gerrit-refspec-parameter:
148 refspec: 'refs/heads/{branch}'
151 - gerrit-trigger-scm:
152 credentials-id: '{ssh-credentials}'
154 choosing-strategy: 'default'
158 - ssh-agent-credentials:
160 - '{ssh-credentials}'
163 - gerrit-trigger-patch-merged:
164 name: 'coretutorials'
168 - wipe-org-opendaylight-repo
169 - jacoco-nojava-workaround
170 - provide-maven-settings:
171 global-settings-file: '{odl-global-settings}'
172 settings-file: '{coretutorials-settings}'
175 maven-name: '{mvn33}'
177 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dmerge -Dstream={stream}'
178 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
179 settings: '{coretutorials-settings}'
180 global-settings: '{odl-global-settings}'
181 post-step-run-condition: UNSTABLE
185 condition-kind: file-exists
186 condition-filename: deploy-site.xml
187 condition-basedir: workspace
189 # The strategy here is intentional to run Maven site:deploy twice
190 # once using regular pom.xml to produce a staged-site which is
191 # then used by deploy-site.xml to push to Nexus. This is a
192 # workaround to Maven Site's default linking code which creates
193 # incorrect URLs for sites due to auto-detection assuming your
194 # project is configured in a certain way which ODL is not.
197 maven-version: '{mvn33}'
199 goals: 'site:deploy -Dstream={stream}'
202 settings: '{coretutorials-settings}'
203 global-settings: '{odl-global-settings}'
205 maven-version: '{mvn33}'
207 goals: 'site:deploy -Dstream={stream}'
210 settings: '{coretutorials-settings}'
211 global-settings: '{odl-global-settings}'
218 artifacts: '**/target/surefire-reports/*-output.txt, '
219 - email-notification:
220 email-prefix: '[coretutorials]'
224 deploy-unstable: false
228 name: 'coretutorials-periodic-{stream}'
230 # Job template for periodic builders
232 # The purpose of this job template is to setup a periodic
235 # Required Variables:
236 # stream: release stream (eg. stable-lithium or beryllium)
237 # branch: git branch (eg. stable/lithium or master)
244 daysToKeep: '{build-days-to-keep}'
245 numToKeep: '{build-num-to-keep}'
246 artifactDaysToKeep: '{build-artifact-days-to-keep}'
247 artifactNumToKeep: '{build-artifact-num-to-keep}'
255 credentials-id: '{ssh-credentials}'
261 - ssh-agent-credentials:
263 - '{ssh-credentials}'
269 - wipe-org-opendaylight-repo
270 - jacoco-nojava-workaround
271 - provide-maven-settings:
272 global-settings-file: '{odl-global-settings}'
273 settings-file: '{coretutorials-settings}'
276 maven-name: '{mvn33}'
278 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
279 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
280 settings: '{coretutorials-settings}'
281 global-settings: '{odl-global-settings}'
287 - email-notification:
288 email-prefix: '[coretutorials]'
292 name: 'coretutorials-distribution-{stream}'
294 # Required variables:
295 # stream: release stream (eg. stable-lithium or beryllium)
296 # branch: git branch (eg. stable/lithium or master)
303 daysToKeep: '{build-days-to-keep}'
304 numToKeep: '{build-num-to-keep}'
305 artifactDaysToKeep: '{build-artifact-days-to-keep}'
306 artifactNumToKeep: '{build-artifact-num-to-keep}'
310 project: 'integration/distribution'
314 credentials-id: '{ssh-credentials}'
320 - ssh-agent-credentials:
322 - '{ssh-credentials}'
326 jobs: '{project}-merge-{stream}'
330 - wipe-org-opendaylight-repo
331 - provide-maven-settings:
332 global-settings-file: '{odl-global-settings}'
333 settings-file: '{coretutorials-settings}'
336 maven-name: '{mvn33}'
338 goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
339 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
340 settings: '{integration-settings}'
341 global-settings: '{odl-global-settings}'
344 - email-notification:
345 email-prefix: '[{project}]'
349 deploy-unstable: false
352 name: 'coretutorials-integration-{stream}'
355 # Job template for ODL integration verify jobs
357 # This is similar to a normal verify job, but it runs
358 # when a project that's a dependency of your project
359 # is successfully built.
361 # Required Variables:
362 # stream: release stream (eg. stable-lithium or beryllium)
363 # branch: git branch (eg. stable/lithium or master)
370 daysToKeep: '{build-days-to-keep}'
371 numToKeep: '{build-num-to-keep}'
372 artifactDaysToKeep: '{build-artifact-days-to-keep}'
373 artifactNumToKeep: '{build-artifact-num-to-keep}'
381 credentials-id: '{ssh-credentials}'
387 - ssh-agent-credentials:
389 - '{ssh-credentials}'
393 jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
397 - wipe-org-opendaylight-repo
398 - jacoco-nojava-workaround
399 - provide-maven-settings:
400 global-settings-file: '{odl-global-settings}'
401 settings-file: '{coretutorials-settings}'
404 maven-name: '{mvn33}'
406 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
407 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
408 settings: '{coretutorials-settings}'
409 global-settings: '{odl-global-settings}'
415 - email-notification:
416 email-prefix: '[coretutorials] [odlparent] [yangtools] [controller]'
420 name: 'coretutorials-sonar'
429 artifactDaysToKeep: '1'
430 artifactNumToKeep: '1'
438 credentials-id: '{ssh-credentials}'
444 - ssh-agent-credentials:
446 - '{ssh-credentials}'
450 - gerrit-trigger-patch-sonar:
451 name: 'coretutorials'
454 - wipe-org-opendaylight-repo
455 - jacoco-nojava-workaround
456 - provide-maven-settings:
457 global-settings-file: '{odl-global-settings}'
458 settings-file: '{coretutorials-settings}'
461 maven-name: '{mvn33}'
463 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dsonar'
464 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
465 settings: '{coretutorials-settings}'
466 global-settings: '{odl-global-settings}'
474 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
475 - email-notification:
476 email-prefix: '[coretutorials]'
480 name: 'coretutorials-clm-{stream}'
487 daysToKeep: '{build-days-to-keep}'
488 numToKeep: '{build-num-to-keep}'
489 artifactDaysToKeep: '{build-artifact-days-to-keep}'
490 artifactNumToKeep: '{build-artifact-num-to-keep}'
498 credentials-id: '{ssh-credentials}'
504 - ssh-agent-credentials:
506 - '{ssh-credentials}'
512 - wipe-org-opendaylight-repo
513 - provide-maven-settings:
514 global-settings-file: '{odl-global-settings}'
515 settings-file: '{coretutorials-settings}'
518 maven-name: '{mvn33}'
520 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'
521 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
522 settings: '{coretutorials-settings}'
523 global-settings: '{odl-global-settings}'
526 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
528 application-name: coretutorials
531 - email-notification:
532 email-prefix: '[coretutorials]'
535 name: 'coretutorials-validate-autorelease-{stream}'
536 disabled: '{obj:disable_autorelease}'
544 daysToKeep: '{build-days-to-keep}'
545 numToKeep: '{build-num-to-keep}'
546 artifactDaysToKeep: '{build-artifact-days-to-keep}'
547 artifactNumToKeep: '{build-artifact-num-to-keep}'
554 - autorelease-release-tag:
555 release-tag: 'validate'
556 - autorelease-release-branch:
557 release-branch: '{branch}'
558 - autorelease-release-datestamp:
563 url: 'https://git.opendaylight.org/gerrit/releng/autorelease'
572 - autorelease-build-timeout
573 - ssh-agent-credentials:
575 - '{ssh-credentials}'
579 server-name: 'OpenDaylight'
581 - patchset-created-event:
582 exclude-drafts: 'false'
583 exclude-trivial-rebase: 'false'
584 exclude-no-code-change: 'false'
585 - draft-published-event
586 - comment-added-contains-event:
587 comment-contains-value: 'recheck'
588 - comment-added-contains-event:
589 comment-contains-value: 'reverify'
590 - comment-added-contains-event:
591 comment-contains-value: 'revalidate'
593 - project-compare-type: 'ANT'
594 project-pattern: 'coretutorials'
596 - branch-compare-type: 'ANT'
597 branch-pattern: '**/{branch}'
600 - wipe-org-opendaylight-repo
601 - jacoco-nojava-workaround
602 - autorelease-checkout-gerrit-patch
603 - autorelease-generate-taglist
604 - autorelease-generate-release-patches
606 maven-version: '{mvn33}'
607 pom: validate-pom.xml
608 goals: 'clean install -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
611 settings: '{autorelease-settings}'
612 global-settings: '{odl-global-settings}'
615 maven-name: '{mvn33}'
617 goals: 'clean validate -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
618 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
619 settings: '{autorelease-settings}'
620 global-settings: '{odl-global-settings}'
621 automatic-archiving: false
622 post-step-run-condition: UNSTABLE
625 - shell: "./scripts/list-project-dependencies.sh"
626 - autorelease-sys-stats
631 - email-notification:
632 email-prefix: '[autorelease] [coretutorials]'