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 - 'topoprocessing-verify-{stream}'
10 - 'topoprocessing-merge-{stream}'
11 - 'topoprocessing-periodic-{stream}'
12 - 'topoprocessing-distribution-{stream}'
13 - 'topoprocessing-distribution-check-{stream}'
14 - 'topoprocessing-integration-{stream}'
15 - 'topoprocessing-sonar'
16 - 'topoprocessing-clm-{stream}'
17 - 'topoprocessing-validate-autorelease-{stream}'
20 # stream: release stream (eg. stable-lithium or beryllium)
21 # branch: git branch (eg. stable/lithium or master)
28 disable_autorelease: False
29 disable_distribution_check: False
31 branch: 'stable/beryllium'
36 disable_autorelease: False
37 disable_distribution_check: False
39 branch: 'stable/lithium'
44 disable_autorelease: True
45 disable_distribution_check: True
47 project: 'topoprocessing'
49 # For the Job templates below replace instances of:
50 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
51 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
52 # MAVEN_GOALS with your maven goals to build
53 # MAVEN_OPTS with your maven options to build
56 name: 'topoprocessing-verify-{stream}'
58 # Job template for ODL verify jobs
60 # The purpose of this job template is to setup a ODL verify job
63 # stream: release stream (eg. stable-lithium or beryllium)
64 # branch: git branch (eg. stable/lithium or master)
81 daysToKeep: '{build-days-to-keep}'
82 numToKeep: '{build-num-to-keep}'
83 artifactDaysToKeep: '{build-artifact-days-to-keep}'
84 artifactNumToKeep: '{build-artifact-num-to-keep}'
92 refspec: 'refs/heads/{branch}'
96 credentials-id: '{ssh-credentials}'
97 refspec: '$GERRIT_REFSPEC'
98 choosing-strategy: 'gerrit'
102 - ssh-agent-credentials:
104 - '{ssh-credentials}'
107 - gerrit-trigger-patch-submitted:
108 name: 'topoprocessing'
112 - wipe-org-opendaylight-repo
113 - jacoco-nojava-workaround
114 - provide-maven-settings:
115 global-settings-file: 'odl-global-settings'
116 settings-file: 'topoprocessing-settings'
118 maven-version: '{mvn33}'
120 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dstream={stream}'
122 - '-Xmx1024m -XX:MaxPermSize=256m'
123 settings: 'topoprocessing-settings'
125 global-settings: 'odl-global-settings'
126 global-settings-type: cfp
130 artifacts: '**/target/surefire-reports/*-output.txt, '
132 - email-notification:
133 email-prefix: '[topoprocessing]'
136 maven-version: '{mvn33}'
139 name: 'topoprocessing-merge-{stream}'
141 # Job template for ODL merge jobs
143 # The purpose of this job template is to setup a ODL merge job
144 # and deploy artifacts to Nexus.
146 # Required Variables:
147 # stream: release stream (eg. stable-lithium or beryllium)
148 # branch: git branch (eg. stable/lithium or master)
157 artifactDaysToKeep: '{build-artifact-days-to-keep}'
158 artifactNumToKeep: '{build-artifact-num-to-keep}'
166 refspec: 'refs/heads/{branch}'
169 - gerrit-trigger-scm:
170 credentials-id: '{ssh-credentials}'
172 choosing-strategy: 'default'
176 - ssh-agent-credentials:
178 - '{ssh-credentials}'
182 - gerrit-trigger-patch-merged:
183 name: 'topoprocessing'
187 - wipe-org-opendaylight-repo
188 - jacoco-nojava-workaround
189 - provide-maven-settings:
190 global-settings-file: 'odl-global-settings'
191 settings-file: 'topoprocessing-settings'
194 maven-name: '{mvn33}'
196 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dmerge -Dstream={stream}'
197 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
198 settings: 'topoprocessing-settings'
200 global-settings: 'odl-global-settings'
201 global-settings-type: cfp
202 post-step-run-condition: UNSTABLE
206 condition-kind: file-exists
207 condition-filename: deploy-site.xml
208 condition-basedir: workspace
210 # The strategy here is intentional to run Maven site:deploy twice
211 # once using regular pom.xml to produce a staged-site which is
212 # then used by deploy-site.xml to push to Nexus. This is a
213 # workaround to Maven Site's default linking code which creates
214 # incorrect URLs for sites due to auto-detection assuming your
215 # project is configured in a certain way which ODL is not.
218 maven-version: '{mvn33}'
220 goals: 'site:deploy -V -B -Dstream={stream}'
223 settings: 'topoprocessing-settings'
225 global-settings: 'odl-global-settings'
226 global-settings-type: cfp
228 maven-version: '{mvn33}'
230 goals: 'site:deploy -V -B -Dstream={stream}'
233 settings: 'topoprocessing-settings'
235 global-settings: 'odl-global-settings'
236 global-settings-type: cfp
243 artifacts: '**/target/surefire-reports/*-output.txt, '
244 - email-notification:
245 email-prefix: '[topoprocessing]'
249 deploy-unstable: false
252 maven-version: '{mvn33}'
255 name: 'topoprocessing-periodic-{stream}'
258 # Job template for periodic builders
260 # The purpose of this job template is to setup a periodic
263 # Required Variables:
264 # stream: release stream (eg. stable-lithium or beryllium)
265 # branch: git branch (eg. stable/lithium or master)
274 artifactDaysToKeep: '{build-artifact-days-to-keep}'
275 artifactNumToKeep: '{build-artifact-num-to-keep}'
283 credentials-id: '{ssh-credentials}'
289 - ssh-agent-credentials:
291 - '{ssh-credentials}'
297 - wipe-org-opendaylight-repo
298 - jacoco-nojava-workaround
299 - provide-maven-settings:
300 global-settings-file: 'odl-global-settings'
301 settings-file: 'topoprocessing-settings'
304 maven-name: '{mvn33}'
306 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins'
307 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
308 settings: 'topoprocessing-settings'
310 global-settings: 'odl-global-settings'
311 global-settings-type: cfp
317 - email-notification:
318 email-prefix: '[topoprocessing]'
321 maven-version: '{mvn33}'
324 name: 'topoprocessing-distribution-{stream}'
326 # Required variables:
327 # stream: release stream (eg. stable-lithium or beryllium)
328 # branch: git branch (eg. stable/lithium or master)
335 daysToKeep: '{build-days-to-keep}'
336 numToKeep: '{build-num-to-keep}'
337 artifactDaysToKeep: '{build-artifact-days-to-keep}'
338 artifactNumToKeep: '{build-artifact-num-to-keep}'
342 project: 'integration/distribution'
346 credentials-id: '{ssh-credentials}'
352 - ssh-agent-credentials:
354 - '{ssh-credentials}'
358 jobs: '{project}-merge-{stream}'
362 - wipe-org-opendaylight-repo
363 - provide-maven-settings:
364 global-settings-file: 'odl-global-settings'
365 settings-file: 'topoprocessing-settings'
368 maven-name: '{mvn33}'
370 goals: 'clean install -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
371 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
372 settings: 'integration-distribution-settings'
374 global-settings: 'odl-global-settings'
375 global-settings-type: cfp
378 - email-notification:
379 email-prefix: '[{project}]'
383 deploy-unstable: false
385 maven-version: '{mvn33}'
387 # Template: integration-patch-distribution-{stream}
388 # Goal: Build a patch and make sure the distribution can deploy with this change
389 # Operation: This job template builds a patch, creates a distribution containing
390 # the patch, and triggers the distribution deploy test
393 name: 'topoprocessing-distribution-check-{stream}'
394 disabled: '{obj:disable_distribution_check}'
402 daysToKeep: '{build-days-to-keep}'
403 numToKeep: '{build-num-to-keep}'
404 artifactDaysToKeep: '{build-artifact-days-to-keep}'
405 artifactNumToKeep: '{build-artifact-num-to-keep}'
411 refspec: 'refs/heads/{branch}'
414 - integration-distribution-git-url
417 - integration-gerrit-scm:
418 credentials-id: '{ssh-credentials}'
419 basedir: '$GERRIT_PROJECT'
420 refspec: '$GERRIT_REFSPEC'
422 - integration-distribution-scm:
423 credentials-id: '{ssh-credentials}'
428 - ssh-agent-credentials:
430 - '{ssh-credentials}'
434 server-name: 'OpenDaylight'
436 - patchset-created-event:
437 exclude-drafts: 'true'
438 exclude-trivial-rebase: 'false'
439 exclude-no-code-change: 'true'
440 - draft-published-event
441 - comment-added-contains-event:
442 comment-contains-value: 'test-distribution'
443 - comment-added-contains-event:
444 comment-contains-value: 'reverify'
445 - comment-added-contains-event:
446 comment-contains-value: 'recheck'
448 - project-compare-type: 'ANT'
449 project-pattern: '{name}'
451 - branch-compare-type: 'ANT'
452 branch-pattern: '**/{branch}'
460 - wipe-org-opendaylight-repo
462 maven-version: '{mvn33}'
463 pom: '$GERRIT_PROJECT/pom.xml'
464 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}'
466 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
467 settings: 'topoprocessing-settings'
469 global-settings: 'odl-global-settings'
470 global-settings-type: cfp
473 maven-name: '{mvn33}'
474 root-pom: 'distribution/pom.xml'
475 goals: 'clean install -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
476 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
477 settings: 'topoprocessing-settings'
479 global-settings: 'odl-global-settings'
480 global-settings-type: cfp
481 ignore-upstream-changes: true
482 post-step-run-condition: 'SUCCESS'
485 - integration-distribution-check
489 artifacts: 'karaf.log'
491 artifacts: 'karaf_console.log'
492 - email-notification:
493 email-prefix: '[topoprocessing]'
495 maven-version: '{mvn33}'
498 name: 'topoprocessing-integration-{stream}'
501 # Job template for ODL integration verify jobs
503 # This is similar to a normal verify job, but it runs
504 # when a project that's a dependency of your project
505 # is successfully built.
507 # Required Variables:
508 # stream: release stream (eg. stable-lithium or beryllium)
509 # branch: git branch (eg. stable/lithium or master)
516 daysToKeep: '{build-days-to-keep}'
517 numToKeep: '{build-num-to-keep}'
518 artifactDaysToKeep: '{build-artifact-days-to-keep}'
519 artifactNumToKeep: '{build-artifact-num-to-keep}'
527 credentials-id: '{ssh-credentials}'
533 - ssh-agent-credentials:
535 - '{ssh-credentials}'
539 jobs: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
543 - wipe-org-opendaylight-repo
544 - jacoco-nojava-workaround
545 - provide-maven-settings:
546 global-settings-file: 'odl-global-settings'
547 settings-file: 'topoprocessing-settings'
550 maven-name: '{mvn33}'
552 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins'
553 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
554 settings: 'topoprocessing-settings'
556 global-settings: 'odl-global-settings'
557 global-settings-type: cfp
563 - email-notification:
564 email-prefix: '[topoprocessing] [odlparent] [controller] [yangtools]'
567 maven-version: '{mvn33}'
570 name: 'topoprocessing-sonar'
580 artifactDaysToKeep: '1'
581 artifactNumToKeep: '1'
589 credentials-id: '{ssh-credentials}'
595 - ssh-agent-credentials:
597 - '{ssh-credentials}'
601 - gerrit-trigger-patch-sonar:
602 name: 'topoprocessing'
605 - wipe-org-opendaylight-repo
606 - jacoco-nojava-workaround
607 - provide-maven-settings:
608 global-settings-file: 'odl-global-settings'
609 settings-file: 'topoprocessing-settings'
612 maven-name: '{mvn33}'
614 goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -V -B -Djenkins -Dsonar'
615 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
616 settings: 'topoprocessing-settings'
618 global-settings: 'odl-global-settings'
619 global-settings-type: cfp
627 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
628 - email-notification:
629 email-prefix: '[topoprocessing]'
632 maven-version: '{mvn33}'
635 name: 'topoprocessing-clm-{stream}'
643 daysToKeep: '{build-days-to-keep}'
644 numToKeep: '{build-num-to-keep}'
645 artifactDaysToKeep: '{build-artifact-days-to-keep}'
646 artifactNumToKeep: '{build-artifact-num-to-keep}'
654 credentials-id: '{ssh-credentials}'
660 - ssh-agent-credentials:
662 - '{ssh-credentials}'
668 - wipe-org-opendaylight-repo
669 - provide-maven-settings:
670 global-settings-file: 'odl-global-settings'
671 settings-file: 'topoprocessing-settings'
674 maven-name: '{mvn33}'
676 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'
677 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
678 settings: 'topoprocessing-settings'
680 global-settings: 'odl-global-settings'
681 global-settings-type: cfp
684 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
686 application-name: topoprocessing
689 - email-notification:
690 email-prefix: '[topoprocessing]'
692 maven-version: '{mvn33}'
695 name: 'topoprocessing-validate-autorelease-{stream}'
696 disabled: '{obj:disable_autorelease}'
704 daysToKeep: '{build-days-to-keep}'
705 numToKeep: '{build-num-to-keep}'
706 artifactDaysToKeep: '{build-artifact-days-to-keep}'
707 artifactNumToKeep: '{build-artifact-num-to-keep}'
715 refspec: 'refs/heads/{branch}'
716 - autorelease-release-tag:
717 release-tag: 'validate'
718 - autorelease-release-branch:
719 release-branch: '{branch}'
722 default: 'ssh://jenkins-$SILO@git.opendaylight.org:29418/releng/autorelease'
723 description: "Autorelease clone URL"
728 credentials-id: '{ssh-credentials}'
738 - autorelease-build-timeout
739 - ssh-agent-credentials:
741 - '{ssh-credentials}'
745 server-name: 'OpenDaylight'
747 - patchset-created-event:
748 exclude-drafts: 'true'
749 exclude-trivial-rebase: 'false'
750 exclude-no-code-change: 'true'
751 - draft-published-event
752 - comment-added-contains-event:
753 comment-contains-value: 'recheck'
754 - comment-added-contains-event:
755 comment-contains-value: 'reverify'
756 - comment-added-contains-event:
757 comment-contains-value: 'revalidate'
759 - project-compare-type: 'ANT'
760 project-pattern: 'topoprocessing'
762 - branch-compare-type: 'ANT'
763 branch-pattern: '**/{branch}'
769 - wipe-org-opendaylight-repo
770 - jacoco-nojava-workaround
771 - autorelease-checkout-gerrit-patch
772 - autorelease-generate-release-patches
774 maven-version: '{mvn33}'
775 pom: validate-pom.xml
776 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'
779 settings: 'autorelease-settings'
781 global-settings: 'odl-global-settings'
782 global-settings-type: cfp
785 maven-name: '{mvn33}'
787 goals: 'clean validate -V -B -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
788 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
789 settings: 'autorelease-settings'
791 global-settings: 'odl-global-settings'
792 global-settings-type: cfp
793 automatic-archiving: false
794 post-step-run-condition: UNSTABLE
797 - autorelease-sys-stats
800 - email-notification:
801 email-prefix: '[autorelease] [topoprocessing]'
803 maven-version: '{mvn33}'