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 - 'bgpcep-verify-{stream}'
10 - 'bgpcep-merge-{stream}'
11 - 'bgpcep-periodic-{stream}'
12 - 'bgpcep-distribution-{stream}'
13 - 'bgpcep-distribution-check-{stream}'
14 - 'bgpcep-integration-{stream}'
16 - 'bgpcep-clm-{stream}'
17 - 'bgpcep-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 branch: 'stable/helium'
51 disable_autorelease: True
52 disable_distribution_check: True
56 # For the Job templates below replace instances of:
57 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
58 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
59 # MAVEN_GOALS with your maven goals to build
60 # MAVEN_OPTS with your maven options to build
63 name: 'bgpcep-verify-{stream}'
65 # Job template for ODL verify jobs
67 # The purpose of this job template is to setup a ODL verify job
70 # stream: release stream (eg. stable-lithium or beryllium)
71 # branch: git branch (eg. stable/lithium or master)
88 daysToKeep: '{build-days-to-keep}'
89 numToKeep: '{build-num-to-keep}'
90 artifactDaysToKeep: '{build-artifact-days-to-keep}'
91 artifactNumToKeep: '{build-artifact-num-to-keep}'
98 - gerrit-refspec-parameter:
99 refspec: 'refs/heads/{branch}'
102 - gerrit-trigger-scm:
103 credentials-id: '{ssh-credentials}'
104 refspec: '$GERRIT_REFSPEC'
105 choosing-strategy: 'gerrit'
109 - ssh-agent-credentials:
111 - '{ssh-credentials}'
114 - gerrit-trigger-patch-submitted:
119 - wipe-org-opendaylight-repo
120 - jacoco-nojava-workaround
121 - provide-maven-settings:
122 global-settings-file: '{odl-global-settings}'
123 settings-file: '{bgpcep-settings}'
125 maven-version: '{mvn33}'
127 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate -Djenkins -Dstream={stream}'
129 - '-Xmx1024m -XX:MaxPermSize=256m'
130 settings: '{bgpcep-settings}'
131 global-settings: '{odl-global-settings}'
135 - email-notification:
136 email-prefix: '[bgpcep]'
140 name: 'bgpcep-merge-{stream}'
142 # Job template for ODL merge jobs
144 # The purpose of this job template is to setup a ODL merge job
145 # and deploy artifacts to Nexus.
147 # Required Variables:
148 # stream: release stream (eg. stable-lithium or beryllium)
149 # branch: git branch (eg. stable/lithium or master)
158 artifactDaysToKeep: '{build-artifact-days-to-keep}'
159 artifactNumToKeep: '{build-artifact-num-to-keep}'
166 - gerrit-refspec-parameter:
167 refspec: 'refs/heads/{branch}'
170 - gerrit-trigger-scm:
171 credentials-id: '{ssh-credentials}'
173 choosing-strategy: 'default'
177 - ssh-agent-credentials:
179 - '{ssh-credentials}'
183 - gerrit-trigger-patch-merged:
188 - wipe-org-opendaylight-repo
189 - jacoco-nojava-workaround
190 - provide-maven-settings:
191 global-settings-file: '{odl-global-settings}'
192 settings-file: '{bgpcep-settings}'
195 maven-name: '{mvn33}'
197 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate -Djenkins -Dmerge -Dstream={stream}'
198 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
199 settings: '{bgpcep-settings}'
200 global-settings: '{odl-global-settings}'
201 post-step-run-condition: UNSTABLE
205 condition-kind: file-exists
206 condition-filename: deploy-site.xml
207 condition-basedir: workspace
209 # The strategy here is intentional to run Maven site:deploy twice
210 # once using regular pom.xml to produce a staged-site which is
211 # then used by deploy-site.xml to push to Nexus. This is a
212 # workaround to Maven Site's default linking code which creates
213 # incorrect URLs for sites due to auto-detection assuming your
214 # project is configured in a certain way which ODL is not.
217 maven-version: '{mvn33}'
219 goals: 'site:deploy -Dstream={stream}'
222 settings: '{bgpcep-settings}'
223 global-settings: '{odl-global-settings}'
225 maven-version: '{mvn33}'
227 goals: 'site:deploy -Dstream={stream}'
230 settings: '{bgpcep-settings}'
231 global-settings: '{odl-global-settings}'
238 artifacts: '**/target/surefire-reports/*-output.txt, '
239 - email-notification:
240 email-prefix: '[bgpcep]'
244 deploy-unstable: false
248 name: 'bgpcep-periodic-{stream}'
251 # Job template for periodic builders
253 # The purpose of this job template is to setup a periodic
256 # Required Variables:
257 # stream: release stream (eg. stable-lithium or beryllium)
258 # branch: git branch (eg. stable/lithium or master)
267 artifactDaysToKeep: '{build-artifact-days-to-keep}'
268 artifactNumToKeep: '{build-artifact-num-to-keep}'
276 credentials-id: '{ssh-credentials}'
282 - ssh-agent-credentials:
284 - '{ssh-credentials}'
290 - wipe-org-opendaylight-repo
291 - jacoco-nojava-workaround
292 - provide-maven-settings:
293 global-settings-file: '{odl-global-settings}'
294 settings-file: '{bgpcep-settings}'
297 maven-name: '{mvn33}'
299 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate -Djenkins'
300 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
301 settings: '{bgpcep-settings}'
302 global-settings: '{odl-global-settings}'
308 - email-notification:
309 email-prefix: '[bgpcep]'
313 name: 'bgpcep-distribution-{stream}'
315 # Required variables:
316 # stream: release stream (eg. stable-lithium or beryllium)
317 # branch: git branch (eg. stable/lithium or master)
324 daysToKeep: '{build-days-to-keep}'
325 numToKeep: '{build-num-to-keep}'
326 artifactDaysToKeep: '{build-artifact-days-to-keep}'
327 artifactNumToKeep: '{build-artifact-num-to-keep}'
331 project: 'integration/distribution'
335 credentials-id: '{ssh-credentials}'
341 - ssh-agent-credentials:
343 - '{ssh-credentials}'
347 jobs: '{project}-merge-{stream}'
351 - wipe-org-opendaylight-repo
352 - provide-maven-settings:
353 global-settings-file: '{odl-global-settings}'
354 settings-file: '{bgpcep-settings}'
357 maven-name: '{mvn33}'
359 goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
360 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
361 settings: '{integration-settings}'
362 global-settings: '{odl-global-settings}'
365 - email-notification:
366 email-prefix: '[{project}]'
370 deploy-unstable: false
372 # Template: integration-patch-distribution-{stream}
373 # Goal: Build a patch and make sure the distribution can deploy with this change
374 # Operation: This job template builds a patch, creates a distribution containing
375 # the patch, and triggers the distribution deploy test
378 name: 'bgpcep-distribution-check-{stream}'
379 disabled: '{obj:disable_distribution_check}'
388 artifactDaysToKeep: '{build-artifact-days-to-keep}'
389 artifactNumToKeep: '{build-artifact-num-to-keep}'
392 - gerrit-project-parameter:
394 - gerrit-refspec-parameter:
398 - integration-distribution-git-url
401 - integration-gerrit-scm:
402 credentials-id: '{ssh-credentials}'
403 basedir: '$GERRIT_PROJECT'
404 refspec: '$GERRIT_REFSPEC'
406 - integration-distribution-scm:
407 credentials-id: '{ssh-credentials}'
412 - ssh-agent-credentials:
414 - '{ssh-credentials}'
418 server-name: 'OpenDaylight'
420 - patchset-created-event:
421 exclude-drafts: 'true'
422 exclude-trivial-rebase: 'false'
423 exclude-no-code-change: 'true'
424 - draft-published-event
425 - comment-added-contains-event:
426 comment-contains-value: 'test-distribution'
428 - project-compare-type: 'ANT'
429 project-pattern: '{name}'
431 - branch-compare-type: 'ANT'
432 branch-pattern: '**/{branch}'
440 - integration-get-bundle-url
442 properties-file: 'bundle.txt'
443 - wipe-org-opendaylight-repo
445 maven-version: '{mvn33}'
446 pom: '$GERRIT_PROJECT/pom.xml'
447 goals: 'clean install -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}'
449 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
450 settings: '{bgpcep-settings}'
451 global-settings: '{odl-global-settings}'
454 maven-name: '{mvn33}'
455 root-pom: 'distribution/pom.xml'
456 goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
457 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
458 settings: '{bgpcep-settings}'
459 global-settings: '{odl-global-settings}'
460 ignore-upstream-changes: true
461 post-step-run-condition: 'SUCCESS'
465 - project: 'integration-distribution-deploy-{stream}'
467 predefined-parameters:
471 - email-notification:
472 email-prefix: '[bgpcep]'
475 name: 'bgpcep-integration-{stream}'
478 # Job template for ODL integration verify jobs
480 # This is similar to a normal verify job, but it runs
481 # when a project that's a dependency of your project
482 # is successfully built.
484 # Required Variables:
485 # stream: release stream (eg. stable-lithium or beryllium)
486 # branch: git branch (eg. stable/lithium or master)
493 daysToKeep: '{build-days-to-keep}'
494 numToKeep: '{build-num-to-keep}'
495 artifactDaysToKeep: '{build-artifact-days-to-keep}'
496 artifactNumToKeep: '{build-artifact-num-to-keep}'
504 credentials-id: '{ssh-credentials}'
510 - ssh-agent-credentials:
512 - '{ssh-credentials}'
516 jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},mdsal-merge-{stream},tcpmd5-merge-{stream}'
520 - wipe-org-opendaylight-repo
521 - jacoco-nojava-workaround
522 - provide-maven-settings:
523 global-settings-file: '{odl-global-settings}'
524 settings-file: '{bgpcep-settings}'
527 maven-name: '{mvn33}'
529 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate -Djenkins'
530 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
531 settings: '{bgpcep-settings}'
532 global-settings: '{odl-global-settings}'
538 - email-notification:
539 email-prefix: '[bgpcep] [odlparent] [yangtools] [controller] [mdsal] [tcpmd5]'
553 artifactDaysToKeep: '1'
554 artifactNumToKeep: '1'
562 credentials-id: '{ssh-credentials}'
568 - ssh-agent-credentials:
570 - '{ssh-credentials}'
574 - gerrit-trigger-patch-sonar:
578 - wipe-org-opendaylight-repo
579 - jacoco-nojava-workaround
580 - provide-maven-settings:
581 global-settings-file: '{odl-global-settings}'
582 settings-file: '{bgpcep-settings}'
585 maven-name: '{mvn33}'
587 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean -DrepoBuild install javadoc:aggregate -Djenkins -Dsonar'
588 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
589 settings: '{bgpcep-settings}'
590 global-settings: '{odl-global-settings}'
598 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
599 - email-notification:
600 email-prefix: '[bgpcep]'
604 name: 'bgpcep-clm-{stream}'
612 daysToKeep: '{build-days-to-keep}'
613 numToKeep: '{build-num-to-keep}'
614 artifactDaysToKeep: '{build-artifact-days-to-keep}'
615 artifactNumToKeep: '{build-artifact-num-to-keep}'
623 credentials-id: '{ssh-credentials}'
629 - ssh-agent-credentials:
631 - '{ssh-credentials}'
637 - wipe-org-opendaylight-repo
638 - provide-maven-settings:
639 global-settings-file: '{odl-global-settings}'
640 settings-file: '{bgpcep-settings}'
643 maven-name: '{mvn33}'
645 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'
646 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
647 settings: '{bgpcep-settings}'
648 global-settings: '{odl-global-settings}'
651 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
653 application-name: bgpcep
656 - email-notification:
657 email-prefix: '[bgpcep]'
660 name: 'bgpcep-validate-autorelease-{stream}'
661 disabled: '{obj:disable_autorelease}'
669 daysToKeep: '{build-days-to-keep}'
670 numToKeep: '{build-num-to-keep}'
671 artifactDaysToKeep: '{build-artifact-days-to-keep}'
672 artifactNumToKeep: '{build-artifact-num-to-keep}'
679 - autorelease-release-tag:
680 release-tag: 'validate'
681 - autorelease-release-branch:
682 release-branch: '{branch}'
683 - autorelease-release-datestamp:
688 url: 'https://git.opendaylight.org/gerrit/releng/autorelease'
697 - autorelease-build-timeout
698 - ssh-agent-credentials:
700 - '{ssh-credentials}'
704 server-name: 'OpenDaylight'
706 - patchset-created-event:
707 exclude-drafts: 'false'
708 exclude-trivial-rebase: 'false'
709 exclude-no-code-change: 'false'
710 - draft-published-event
711 - comment-added-contains-event:
712 comment-contains-value: 'recheck'
713 - comment-added-contains-event:
714 comment-contains-value: 'reverify'
715 - comment-added-contains-event:
716 comment-contains-value: 'revalidate'
718 - project-compare-type: 'ANT'
719 project-pattern: 'bgpcep'
721 - branch-compare-type: 'ANT'
722 branch-pattern: '**/{branch}'
725 - wipe-org-opendaylight-repo
726 - jacoco-nojava-workaround
727 - autorelease-checkout-gerrit-patch
728 - autorelease-generate-taglist
729 - autorelease-generate-release-patches
731 maven-version: '{mvn33}'
732 pom: validate-pom.xml
733 goals: 'clean install -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
736 settings: '{autorelease-settings}'
737 global-settings: '{odl-global-settings}'
740 maven-name: '{mvn33}'
742 goals: 'clean validate -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
743 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
744 settings: '{autorelease-settings}'
745 global-settings: '{odl-global-settings}'
746 automatic-archiving: false
747 post-step-run-condition: UNSTABLE
750 - shell: "./scripts/list-project-dependencies.sh"
751 - autorelease-sys-stats
756 - email-notification:
757 email-prefix: '[autorelease] [bgpcep]'