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-distribution-check-{stream}'
14 - 'coretutorials-integration-{stream}'
15 - 'coretutorials-sonar'
16 - 'coretutorials-clm-{stream}'
17 - 'coretutorials-validate-autorelease-{stream}'
20 # stream: release stream (eg. stable-lithium or beryllium)
21 # branch: git branch (eg. stable/lithium or master)
28 disable_autorelease: True
29 disable_distribution_check: False
31 branch: 'stable/beryllium'
35 disable_autorelease: True
36 disable_distribution_check: False
38 branch: 'stable/lithium'
42 disable_autorelease: True
43 disable_distribution_check: True
45 project: 'coretutorials'
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: 'coretutorials-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:
100 name: 'coretutorials'
104 - jacoco-nojava-workaround
105 - provide-maven-settings:
106 global-settings-file: 'odl-global-settings'
107 settings-file: 'coretutorials-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: 'coretutorials-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: '[coretutorials]'
127 maven-version: '{mvn33}'
130 name: 'coretutorials-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:
171 name: 'coretutorials'
175 - jacoco-nojava-workaround
176 - provide-maven-settings:
177 global-settings-file: 'odl-global-settings'
178 settings-file: 'coretutorials-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: 'coretutorials-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: 'coretutorials-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: 'coretutorials-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: '[coretutorials]'
236 deploy-unstable: false
239 maven-version: '{mvn33}'
242 name: 'coretutorials-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: 'coretutorials-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: 'coretutorials-settings'
293 global-settings: 'odl-global-settings'
294 global-settings-type: cfp
300 - email-notification:
301 email-prefix: '[coretutorials]'
304 maven-version: '{mvn33}'
307 name: 'coretutorials-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: 'coretutorials-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: 'coretutorials-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: 'coretutorials-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: 'coretutorials-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: '[coretutorials]'
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: 'coretutorials-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},yangtools-merge-{stream},controller-merge-{stream}'
519 - jacoco-nojava-workaround
520 - provide-maven-settings:
521 global-settings-file: 'odl-global-settings'
522 settings-file: 'coretutorials-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: 'coretutorials-settings'
531 global-settings: 'odl-global-settings'
532 global-settings-type: cfp
538 - email-notification:
539 email-prefix: '[coretutorials] [odlparent] [yangtools] [controller]'
542 maven-version: '{mvn33}'
545 name: 'coretutorials-sonar'
555 artifactDaysToKeep: '1'
556 artifactNumToKeep: '1'
568 - opendaylight-infra-wrappers:
569 build-timeout: '{build-timeout}'
573 - gerrit-trigger-patch-sonar:
574 name: 'coretutorials'
577 - jacoco-nojava-workaround
578 - provide-maven-settings:
579 global-settings-file: 'odl-global-settings'
580 settings-file: 'coretutorials-settings'
583 maven-name: '{mvn33}'
585 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dsonar'
586 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
587 settings: 'coretutorials-settings'
589 global-settings: 'odl-global-settings'
590 global-settings-type: cfp
598 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
599 - email-notification:
600 email-prefix: '[coretutorials]'
603 maven-version: '{mvn33}'
606 name: 'coretutorials-clm-{stream}'
614 daysToKeep: '{build-days-to-keep}'
615 numToKeep: '{build-num-to-keep}'
616 artifactDaysToKeep: '{build-artifact-days-to-keep}'
617 artifactNumToKeep: '{build-artifact-num-to-keep}'
629 - opendaylight-infra-wrappers:
630 build-timeout: '{build-timeout}'
636 - provide-maven-settings:
637 global-settings-file: 'odl-global-settings'
638 settings-file: 'coretutorials-settings'
641 maven-name: '{mvn33}'
643 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'
644 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
645 settings: 'coretutorials-settings'
647 global-settings: 'odl-global-settings'
648 global-settings-type: cfp
651 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
653 application-name: coretutorials
656 - email-notification:
657 email-prefix: '[coretutorials]'
659 maven-version: '{mvn33}'
662 name: 'coretutorials-validate-autorelease-{stream}'
663 disabled: '{obj:disable_autorelease}'
671 daysToKeep: '{build-days-to-keep}'
672 numToKeep: '{build-num-to-keep}'
673 artifactDaysToKeep: '{build-artifact-days-to-keep}'
674 artifactNumToKeep: '{build-artifact-num-to-keep}'
682 refspec: 'refs/heads/{branch}'
683 - autorelease-release-tag:
684 release-tag: 'validate'
685 - autorelease-release-branch:
686 release-branch: '{branch}'
689 default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/releng/autorelease'
690 description: "Autorelease clone URL"
695 credentials-id: 'opendaylight-jenkins-ssh'
705 - opendaylight-infra-wrappers:
706 build-timeout: '{build-timeout}'
710 server-name: 'OpenDaylight'
712 - patchset-created-event:
713 exclude-drafts: 'true'
714 exclude-trivial-rebase: 'false'
715 exclude-no-code-change: 'true'
716 - draft-published-event
717 - comment-added-contains-event:
718 comment-contains-value: 'recheck'
719 - comment-added-contains-event:
720 comment-contains-value: 'reverify'
721 - comment-added-contains-event:
722 comment-contains-value: 'revalidate'
724 - project-compare-type: 'ANT'
725 project-pattern: 'coretutorials'
727 - branch-compare-type: 'ANT'
728 branch-pattern: '**/{branch}'
734 - jacoco-nojava-workaround
735 - autorelease-checkout-gerrit-patch
736 - autorelease-generate-release-patches
738 maven-version: '{mvn33}'
739 pom: validate-pom.xml
740 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'
743 settings: 'autorelease-settings'
745 global-settings: 'odl-global-settings'
746 global-settings-type: cfp
749 maven-name: '{mvn33}'
751 goals: 'clean validate -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
752 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
753 settings: 'autorelease-settings'
755 global-settings: 'odl-global-settings'
756 global-settings-type: cfp
757 automatic-archiving: false
758 post-step-run-condition: UNSTABLE
761 - autorelease-sys-stats
764 - email-notification:
765 email-prefix: '[autorelease] [coretutorials]'
767 maven-version: '{mvn33}'