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 - 'ovsdb-verify-{stream}'
10 - 'ovsdb-merge-{stream}'
11 - 'ovsdb-periodic-{stream}'
12 - 'ovsdb-distribution-{stream}'
13 - 'ovsdb-distribution-check-{stream}'
14 - 'ovsdb-integration-{stream}'
15 - 'ovsdb-clm-{stream}'
16 - 'ovsdb-validate-autorelease-{stream}'
19 # stream: release stream (eg. stable-lithium or beryllium)
20 # branch: git branch (eg. stable/lithium or master)
27 disable_autorelease: False
28 disable_distribution_check: False
30 branch: 'stable/beryllium'
35 disable_autorelease: False
36 disable_distribution_check: False
38 branch: 'stable/lithium'
42 disable_autorelease: True
43 disable_distribution_check: True
47 # For the Job templates below replace instances of:
48 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
49 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
50 # MAVEN_GOALS with your maven goals to build
51 # MAVEN_OPTS with your maven options to build
54 name: 'ovsdb-verify-{stream}'
56 # Job template for ODL verify jobs
58 # The purpose of this job template is to setup a ODL verify job
61 # stream: release stream (eg. stable-lithium or beryllium)
62 # branch: git branch (eg. stable/lithium or master)
87 refspec: 'refs/heads/{branch}'
91 refspec: '$GERRIT_REFSPEC'
92 choosing-strategy: 'gerrit'
95 - opendaylight-infra-wrappers:
96 build-timeout: '{build-timeout}'
99 - gerrit-trigger-patch-submitted:
104 - jacoco-nojava-workaround
105 - provide-maven-settings:
106 global-settings-file: 'odl-global-settings'
107 settings-file: 'ovsdb-settings'
109 maven-version: '{mvn33}'
111 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dstream={stream}'
113 - '-Xmx1024m -XX:MaxPermSize=256m'
114 settings: 'ovsdb-settings'
116 global-settings: 'odl-global-settings'
117 global-settings-type: cfp
121 artifacts: '**/target/surefire-reports/*-output.txt, '
123 - email-notification:
124 email-prefix: '[ovsdb]'
127 maven-version: '{mvn33}'
130 name: 'ovsdb-merge-{stream}'
132 # Job template for ODL merge jobs
134 # The purpose of this job template is to setup a ODL merge job
135 # and deploy artifacts to Nexus.
137 # Required Variables:
138 # stream: release stream (eg. stable-lithium or beryllium)
139 # branch: git branch (eg. stable/lithium or master)
148 artifactDaysToKeep: '{build-artifact-days-to-keep}'
149 artifactNumToKeep: '{build-artifact-num-to-keep}'
157 refspec: 'refs/heads/{branch}'
160 - gerrit-trigger-scm:
162 choosing-strategy: 'default'
165 - opendaylight-infra-wrappers:
166 build-timeout: '{build-timeout}'
170 - gerrit-trigger-patch-merged:
175 - jacoco-nojava-workaround
176 - provide-maven-settings:
177 global-settings-file: 'odl-global-settings'
178 settings-file: 'ovsdb-settings'
181 maven-name: '{mvn33}'
183 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dmerge -Dstream={stream}'
184 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
185 settings: 'ovsdb-settings'
187 global-settings: 'odl-global-settings'
188 global-settings-type: cfp
189 post-step-run-condition: UNSTABLE
193 condition-kind: file-exists
194 condition-filename: deploy-site.xml
195 condition-basedir: workspace
197 # The strategy here is intentional to run Maven site:deploy twice
198 # once using regular pom.xml to produce a staged-site which is
199 # then used by deploy-site.xml to push to Nexus. This is a
200 # workaround to Maven Site's default linking code which creates
201 # incorrect URLs for sites due to auto-detection assuming your
202 # project is configured in a certain way which ODL is not.
205 maven-version: '{mvn33}'
207 goals: 'site:deploy -V -B -Dstream={stream}'
210 settings: 'ovsdb-settings'
212 global-settings: 'odl-global-settings'
213 global-settings-type: cfp
215 maven-version: '{mvn33}'
217 goals: 'site:deploy -V -B -Dstream={stream}'
220 settings: 'ovsdb-settings'
222 global-settings: 'odl-global-settings'
223 global-settings-type: cfp
230 artifacts: '**/target/surefire-reports/*-output.txt, '
231 - email-notification:
232 email-prefix: '[ovsdb]'
236 deploy-unstable: false
239 maven-version: '{mvn33}'
242 name: 'ovsdb-periodic-{stream}'
245 # Job template for periodic builders
247 # The purpose of this job template is to setup a periodic
250 # Required Variables:
251 # stream: release stream (eg. stable-lithium or beryllium)
252 # branch: git branch (eg. stable/lithium or master)
261 artifactDaysToKeep: '{build-artifact-days-to-keep}'
262 artifactNumToKeep: '{build-artifact-num-to-keep}'
274 - opendaylight-infra-wrappers:
275 build-timeout: '{build-timeout}'
281 - jacoco-nojava-workaround
282 - provide-maven-settings:
283 global-settings-file: 'odl-global-settings'
284 settings-file: 'ovsdb-settings'
287 maven-name: '{mvn33}'
289 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins'
290 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
291 settings: 'ovsdb-settings'
293 global-settings: 'odl-global-settings'
294 global-settings-type: cfp
300 - email-notification:
301 email-prefix: '[ovsdb]'
304 maven-version: '{mvn33}'
307 name: 'ovsdb-distribution-{stream}'
309 # Required variables:
310 # stream: release stream (eg. stable-lithium or beryllium)
311 # branch: git branch (eg. stable/lithium or master)
318 daysToKeep: '{build-days-to-keep}'
319 numToKeep: '{build-num-to-keep}'
320 artifactDaysToKeep: '{build-artifact-days-to-keep}'
321 artifactNumToKeep: '{build-artifact-num-to-keep}'
325 project: 'integration/distribution'
333 - opendaylight-infra-wrappers:
334 build-timeout: '{build-timeout}'
338 jobs: '{project}-merge-{stream}'
342 - provide-maven-settings:
343 global-settings-file: 'odl-global-settings'
344 settings-file: 'ovsdb-settings'
347 maven-name: '{mvn33}'
349 goals: 'clean install -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
350 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
351 settings: 'integration-distribution-settings'
353 global-settings: 'odl-global-settings'
354 global-settings-type: cfp
357 - email-notification:
358 email-prefix: '[{project}]'
362 deploy-unstable: false
364 maven-version: '{mvn33}'
366 # Template: integration-patch-distribution-{stream}
367 # Goal: Build a patch and make sure the distribution can deploy with this change
368 # Operation: This job template builds a patch, creates a distribution containing
369 # the patch, and triggers the distribution deploy test
372 name: 'ovsdb-distribution-check-{stream}'
373 disabled: '{obj:disable_distribution_check}'
381 daysToKeep: '{build-days-to-keep}'
382 numToKeep: '{build-num-to-keep}'
383 artifactDaysToKeep: '{build-artifact-days-to-keep}'
384 artifactNumToKeep: '{build-artifact-num-to-keep}'
390 refspec: 'refs/heads/{branch}'
393 - integration-distribution-git-url
396 - integration-gerrit-scm:
397 basedir: '$GERRIT_PROJECT'
398 refspec: '$GERRIT_REFSPEC'
400 - integration-distribution-scm:
404 - opendaylight-infra-wrappers:
405 build-timeout: '{build-timeout}'
409 server-name: 'OpenDaylight'
411 - patchset-created-event:
412 exclude-drafts: 'true'
413 exclude-trivial-rebase: 'false'
414 exclude-no-code-change: 'true'
415 - draft-published-event
416 - comment-added-contains-event:
417 comment-contains-value: 'test-distribution'
418 - comment-added-contains-event:
419 comment-contains-value: 'reverify'
420 - comment-added-contains-event:
421 comment-contains-value: 'recheck'
423 - project-compare-type: 'ANT'
424 project-pattern: '{name}'
426 - branch-compare-type: 'ANT'
427 branch-pattern: '**/{branch}'
436 maven-version: '{mvn33}'
437 pom: '$GERRIT_PROJECT/pom.xml'
438 goals: 'clean install -V -B -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
440 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
441 settings: 'ovsdb-settings'
443 global-settings: 'odl-global-settings'
444 global-settings-type: cfp
447 maven-name: '{mvn33}'
448 root-pom: 'distribution/pom.xml'
449 goals: 'clean install -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
450 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
451 settings: 'ovsdb-settings'
453 global-settings: 'odl-global-settings'
454 global-settings-type: cfp
455 ignore-upstream-changes: true
456 post-step-run-condition: 'SUCCESS'
459 - integration-distribution-check
462 - email-notification:
463 email-prefix: '[ovsdb]'
468 mkdir -p $WORKSPACE/archives
469 cp karaf*.log $WORKSPACE/archives
470 script-only-if-succeeded: False
471 script-only-if-failed: False
472 mark-unstable-if-failed: True
474 maven-version: '{mvn33}'
477 name: 'ovsdb-integration-{stream}'
480 # Job template for ODL integration verify jobs
482 # This is similar to a normal verify job, but it runs
483 # when a project that's a dependency of your project
484 # is successfully built.
486 # Required Variables:
487 # stream: release stream (eg. stable-lithium or beryllium)
488 # branch: git branch (eg. stable/lithium or master)
495 daysToKeep: '{build-days-to-keep}'
496 numToKeep: '{build-num-to-keep}'
497 artifactDaysToKeep: '{build-artifact-days-to-keep}'
498 artifactNumToKeep: '{build-artifact-num-to-keep}'
510 - opendaylight-infra-wrappers:
511 build-timeout: '{build-timeout}'
515 jobs: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
519 - jacoco-nojava-workaround
520 - provide-maven-settings:
521 global-settings-file: 'odl-global-settings'
522 settings-file: 'ovsdb-settings'
525 maven-name: '{mvn33}'
527 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins'
528 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
529 settings: 'ovsdb-settings'
531 global-settings: 'odl-global-settings'
532 global-settings-type: cfp
538 - email-notification:
539 email-prefix: '[ovsdb] [odlparent] [controller] [yangtools]'
542 maven-version: '{mvn33}'
545 name: 'ovsdb-clm-{stream}'
553 daysToKeep: '{build-days-to-keep}'
554 numToKeep: '{build-num-to-keep}'
555 artifactDaysToKeep: '{build-artifact-days-to-keep}'
556 artifactNumToKeep: '{build-artifact-num-to-keep}'
568 - opendaylight-infra-wrappers:
569 build-timeout: '{build-timeout}'
575 - provide-maven-settings:
576 global-settings-file: 'odl-global-settings'
577 settings-file: 'ovsdb-settings'
580 maven-name: '{mvn33}'
582 goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -V -B -Djenkins -DskipTests=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
583 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
584 settings: 'ovsdb-settings'
586 global-settings: 'odl-global-settings'
587 global-settings-type: cfp
590 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
592 application-name: ovsdb
595 - email-notification:
596 email-prefix: '[ovsdb]'
598 maven-version: '{mvn33}'
601 name: 'ovsdb-validate-autorelease-{stream}'
602 disabled: '{obj:disable_autorelease}'
610 daysToKeep: '{build-days-to-keep}'
611 numToKeep: '{build-num-to-keep}'
612 artifactDaysToKeep: '{build-artifact-days-to-keep}'
613 artifactNumToKeep: '{build-artifact-num-to-keep}'
621 refspec: 'refs/heads/{branch}'
622 - autorelease-release-tag:
623 release-tag: 'validate'
624 - autorelease-release-branch:
625 release-branch: '{branch}'
628 default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/releng/autorelease'
629 description: "Autorelease clone URL"
634 credentials-id: 'opendaylight-jenkins-ssh'
644 - opendaylight-infra-wrappers:
645 build-timeout: '{build-timeout}'
649 server-name: 'OpenDaylight'
651 - patchset-created-event:
652 exclude-drafts: 'true'
653 exclude-trivial-rebase: 'false'
654 exclude-no-code-change: 'true'
655 - draft-published-event
656 - comment-added-contains-event:
657 comment-contains-value: 'recheck'
658 - comment-added-contains-event:
659 comment-contains-value: 'reverify'
660 - comment-added-contains-event:
661 comment-contains-value: 'revalidate'
663 - project-compare-type: 'ANT'
664 project-pattern: 'ovsdb'
666 - branch-compare-type: 'ANT'
667 branch-pattern: '**/{branch}'
673 - jacoco-nojava-workaround
674 - autorelease-checkout-gerrit-patch
675 - autorelease-generate-release-patches
677 maven-version: '{mvn33}'
678 pom: validate-pom.xml
679 goals: 'clean install -V -B -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
682 settings: 'autorelease-settings'
684 global-settings: 'odl-global-settings'
685 global-settings-type: cfp
688 maven-name: '{mvn33}'
690 goals: 'clean validate -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
691 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
692 settings: 'autorelease-settings'
694 global-settings: 'odl-global-settings'
695 global-settings-type: cfp
696 automatic-archiving: false
697 post-step-run-condition: UNSTABLE
700 - autorelease-sys-stats
703 - email-notification:
704 email-prefix: '[autorelease] [ovsdb]'
706 maven-version: '{mvn33}'