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 - 'vtn-verify-{stream}'
10 - 'vtn-merge-{stream}'
11 - 'vtn-daily-{stream}'
12 - 'vtn-distribution-{stream}'
13 - 'vtn-integration-{stream}'
16 - 'vtn-validate-autorelease-{stream}'
19 # stream: release stream (eg. stable-lithium or beryllium)
20 # branch: git branch (eg. stable/lithium or master)
28 disable_autorelease: False
30 branch: 'stable/lithium'
34 disable_autorelease: True
36 branch: 'stable/helium'
40 disable_autorelease: True
44 # For the Job templates below replace instances of:
45 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
46 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
47 # MAVEN_GOALS with your maven goals to build
48 # MAVEN_OPTS with your maven options to build
51 name: 'vtn-verify-{stream}'
53 # Job template for ODL verify jobs
55 # The purpose of this job template is to setup a ODL verify job
58 # stream: release stream (eg. stable-lithium or beryllium)
59 # branch: git branch (eg. stable/lithium or master)
76 daysToKeep: '{build-days-to-keep}'
77 numToKeep: '{build-num-to-keep}'
78 artifactDaysToKeep: '{build-artifact-days-to-keep}'
79 artifactNumToKeep: '{build-artifact-num-to-keep}'
89 credentials-id: '{ssh-credentials}'
90 refspec: '$GERRIT_REFSPEC'
91 choosing-strategy: 'gerrit'
95 - ssh-agent-credentials:
100 - gerrit-trigger-patch-submitted:
105 - wipe-org-opendaylight-repo
106 - jacoco-nojava-workaround
107 - provide-maven-settings:
108 global-settings-file: '{odl-global-settings}'
109 settings-file: '{vtn-settings}'
111 maven-version: '{mvn33}'
113 goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
115 - '-Xmx1024m -XX:MaxPermSize=256m'
116 settings: '{vtn-settings}'
117 global-settings: '{odl-global-settings}'
121 - email-notification:
122 email-prefix: '[vtn]'
126 name: 'vtn-merge-{stream}'
128 # Job template for ODL merge jobs
130 # The purpose of this job template is to setup a ODL merge job
131 # and deploy artifacts to Nexus.
133 # Required Variables:
134 # stream: release stream (eg. stable-lithium or beryllium)
135 # branch: git branch (eg. stable/lithium or master)
142 daysToKeep: '{build-days-to-keep}'
143 numToKeep: '{build-num-to-keep}'
144 artifactDaysToKeep: '{build-artifact-days-to-keep}'
145 artifactNumToKeep: '{build-artifact-num-to-keep}'
152 - gerrit-trigger-scm:
153 credentials-id: '{ssh-credentials}'
155 choosing-strategy: 'default'
159 - ssh-agent-credentials:
161 - '{ssh-credentials}'
164 - gerrit-trigger-patch-merged:
169 - wipe-org-opendaylight-repo
170 - jacoco-nojava-workaround
171 - provide-maven-settings:
172 global-settings-file: '{odl-global-settings}'
173 settings-file: '{vtn-settings}'
176 maven-name: '{mvn33}'
178 goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dstream={stream}'
179 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
180 settings: '{vtn-settings}'
181 global-settings: '{odl-global-settings}'
182 post-step-run-condition: UNSTABLE
186 condition-kind: file-exists
187 condition-filename: deploy-site.xml
188 condition-basedir: workspace
190 # The strategy here is intentional to run Maven site:deploy twice
191 # once using regular pom.xml to produce a staged-site which is
192 # then used by deploy-site.xml to push to Nexus. This is a
193 # workaround to Maven Site's default linking code which creates
194 # incorrect URLs for sites due to auto-detection assuming your
195 # project is configured in a certain way which ODL is not.
198 maven-version: '{mvn33}'
200 goals: 'site:deploy -Dstream={stream}'
203 settings: '{vtn-settings}'
204 global-settings: '{odl-global-settings}'
206 maven-version: '{mvn33}'
208 goals: 'site:deploy -Dstream={stream}'
211 settings: '{vtn-settings}'
212 global-settings: '{odl-global-settings}'
219 artifacts: 'manager/dist/*/target/*.zip, coordinator/dist/target/*.bz2, manager/northbound/target/site/wsdocs/**, manager/api/target/*-javadoc.jar, manager/api/target/apidocs/**'
220 - email-notification:
221 email-prefix: '[vtn]'
225 deploy-unstable: false
229 name: 'vtn-daily-{stream}'
231 # Job template for daily builders
233 # The purpose of this job template is to setup a daily/nightly
234 # builder and pushes to Sonar analysis.
236 # Required Variables:
237 # stream: release stream (eg. stable-lithium or beryllium)
238 # branch: git branch (eg. stable/lithium or master)
245 daysToKeep: '{build-days-to-keep}'
246 numToKeep: '{build-num-to-keep}'
247 artifactDaysToKeep: '{build-artifact-days-to-keep}'
248 artifactNumToKeep: '{build-artifact-num-to-keep}'
256 credentials-id: '{ssh-credentials}'
262 - ssh-agent-credentials:
264 - '{ssh-credentials}'
270 - wipe-org-opendaylight-repo
271 - jacoco-nojava-workaround
272 - provide-maven-settings:
273 global-settings-file: '{odl-global-settings}'
274 settings-file: '{vtn-settings}'
277 maven-name: '{mvn33}'
279 goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
280 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
281 settings: '{vtn-settings}'
282 global-settings: '{odl-global-settings}'
288 - email-notification:
289 email-prefix: '[vtn]'
293 name: 'vtn-distribution-{stream}'
295 # Required variables:
296 # stream: release stream (eg. stable-lithium or beryllium)
297 # branch: git branch (eg. stable/lithium or master)
304 daysToKeep: '{build-days-to-keep}'
305 numToKeep: '{build-num-to-keep}'
306 artifactDaysToKeep: '{build-artifact-days-to-keep}'
307 artifactNumToKeep: '{build-artifact-num-to-keep}'
311 project: 'integration/distribution'
315 credentials-id: '{ssh-credentials}'
321 - ssh-agent-credentials:
323 - '{ssh-credentials}'
327 jobs: '{project}-merge-{stream}'
331 - wipe-org-opendaylight-repo
332 - provide-maven-settings:
333 global-settings-file: '{odl-global-settings}'
334 settings-file: '{vtn-settings}'
337 maven-name: '{mvn33}'
339 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install'
340 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
341 settings: '{integration-settings}'
342 global-settings: '{odl-global-settings}'
345 - email-notification:
346 email-prefix: '[{project}]'
350 deploy-unstable: false
353 name: 'vtn-integration-{stream}'
356 # Job template for ODL integration verify jobs
358 # This is similar to a normal verify job, but it runs
359 # when a project that's a dependency of your project
360 # is successfully built.
362 # Required Variables:
363 # stream: release stream (eg. stable-lithium or beryllium)
364 # branch: git branch (eg. stable/lithium or master)
371 daysToKeep: '{build-days-to-keep}'
372 numToKeep: '{build-num-to-keep}'
373 artifactDaysToKeep: '{build-artifact-days-to-keep}'
374 artifactNumToKeep: '{build-artifact-num-to-keep}'
382 credentials-id: '{ssh-credentials}'
388 - ssh-agent-credentials:
390 - '{ssh-credentials}'
394 jobs: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream},openflowplugin-merge-{stream},ovsdb-merge-{stream},neutron-merge-{stream}'
398 - wipe-org-opendaylight-repo
399 - jacoco-nojava-workaround
400 - provide-maven-settings:
401 global-settings-file: '{odl-global-settings}'
402 settings-file: '{vtn-settings}'
405 maven-name: '{mvn33}'
407 goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
408 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
409 settings: '{vtn-settings}'
410 global-settings: '{odl-global-settings}'
416 - email-notification:
417 email-prefix: '[vtn] [odlparent] [controller] [yangtools] [openflowplugin] [ovsdb] [neutron]'
430 artifactDaysToKeep: '1'
431 artifactNumToKeep: '1'
439 credentials-id: '{ssh-credentials}'
445 - ssh-agent-credentials:
447 - '{ssh-credentials}'
451 - gerrit-trigger-patch-sonar:
455 - wipe-org-opendaylight-repo
456 - jacoco-nojava-workaround
457 - provide-maven-settings:
458 global-settings-file: '{odl-global-settings}'
459 settings-file: '{vtn-settings}'
462 maven-name: '{mvn33}'
464 goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dsonar'
465 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
466 settings: '{vtn-settings}'
467 global-settings: '{odl-global-settings}'
475 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
476 - email-notification:
477 email-prefix: '[vtn]'
481 name: 'vtn-clm-{stream}'
488 daysToKeep: '{build-days-to-keep}'
489 numToKeep: '{build-num-to-keep}'
490 artifactDaysToKeep: '{build-artifact-days-to-keep}'
491 artifactNumToKeep: '{build-artifact-num-to-keep}'
499 credentials-id: '{ssh-credentials}'
505 - ssh-agent-credentials:
507 - '{ssh-credentials}'
513 - wipe-org-opendaylight-repo
514 - provide-maven-settings:
515 global-settings-file: '{odl-global-settings}'
516 settings-file: '{vtn-settings}'
519 maven-name: '{mvn33}'
521 goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
522 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
523 settings: '{vtn-settings}'
524 global-settings: '{odl-global-settings}'
528 application-name: vtn
531 - email-notification:
532 email-prefix: '[vtn]'
535 name: 'vtn-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}'
578 - gerrit-trigger-patch-submitted:
583 - wipe-org-opendaylight-repo
584 - jacoco-nojava-workaround
585 - autorelease-checkout-gerrit-patch
586 - autorelease-generate-taglist
587 - autorelease-generate-release-patches
589 maven-version: '{mvn33}'
590 pom: validate-pom.xml
591 goals: 'clean install -T1.5C -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
594 settings: '{autorelease-settings}'
595 global-settings: '{odl-global-settings}'
598 maven-name: '{mvn33}'
600 goals: 'clean validate -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
601 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
602 settings: '{autorelease-settings}'
603 global-settings: '{odl-global-settings}'
604 automatic-archiving: false
605 post-step-run-condition: UNSTABLE
608 - shell: "./scripts/list-project-dependencies.sh"
609 - autorelease-sys-stats
614 - email-notification:
615 email-prefix: '[autorelease] [vtn]'