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 - 'defense4all-verify-{stream}'
10 - 'defense4all-merge-{stream}'
11 - 'defense4all-periodic-{stream}'
12 - 'defense4all-distribution-{stream}'
13 - 'defense4all-distribution-check-{stream}'
14 - 'defense4all-integration-{stream}'
16 - 'defense4all-clm-{stream}'
17 - 'defense4all-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 branch: 'stable/helium'
49 disable_autorelease: True
50 disable_distribution_check: True
52 project: 'defense4all'
54 # For the Job templates below replace instances of:
55 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
56 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
57 # MAVEN_GOALS with your maven goals to build
58 # MAVEN_OPTS with your maven options to build
61 name: 'defense4all-verify-{stream}'
63 # Job template for ODL verify jobs
65 # The purpose of this job template is to setup a ODL verify job
68 # stream: release stream (eg. stable-lithium or beryllium)
69 # branch: git branch (eg. stable/lithium or master)
86 daysToKeep: '{build-days-to-keep}'
87 numToKeep: '{build-num-to-keep}'
88 artifactDaysToKeep: '{build-artifact-days-to-keep}'
89 artifactNumToKeep: '{build-artifact-num-to-keep}'
96 - gerrit-refspec-parameter:
97 refspec: 'refs/heads/{branch}'
100 - gerrit-trigger-scm:
101 credentials-id: '{ssh-credentials}'
102 refspec: '$GERRIT_REFSPEC'
103 choosing-strategy: 'gerrit'
107 - ssh-agent-credentials:
109 - '{ssh-credentials}'
112 - gerrit-trigger-patch-submitted:
117 - wipe-org-opendaylight-repo
118 - jacoco-nojava-workaround
119 - provide-maven-settings:
120 global-settings-file: '{odl-global-settings}'
121 settings-file: '{defense4all-settings}'
123 maven-version: '{mvn33}'
125 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dstream={stream}'
127 - '-Xmx1024m -XX:MaxPermSize=256m'
128 settings: '{defense4all-settings}'
129 global-settings: '{odl-global-settings}'
133 artifacts: '**/target/surefire-reports/*-output.txt, '
135 - email-notification:
136 email-prefix: '[defense4all]'
140 name: 'defense4all-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: '{defense4all-settings}'
195 maven-name: '{mvn33}'
196 root-pom: 'dfapp/pom.xml'
197 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dmerge -Dstream={stream}'
198 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
199 settings: '{defense4all-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: '{defense4all-settings}'
223 global-settings: '{odl-global-settings}'
225 maven-version: '{mvn33}'
227 goals: 'site:deploy -Dstream={stream}'
230 settings: '{defense4all-settings}'
231 global-settings: '{odl-global-settings}'
238 artifacts: '**/target/surefire-reports/*-output.txt, '
239 - email-notification:
240 email-prefix: '[defense4all]'
244 deploy-unstable: false
248 name: 'defense4all-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: '{defense4all-settings}'
297 maven-name: '{mvn33}'
298 root-pom: 'dfapp/pom.xml'
299 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
300 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
301 settings: '{defense4all-settings}'
302 global-settings: '{odl-global-settings}'
308 - email-notification:
309 email-prefix: '[defense4all]'
313 name: 'defense4all-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: '{defense4all-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: 'defense4all-distribution-check-{stream}'
379 disabled: '{obj:disable_distribution_check}'
389 artifactDaysToKeep: '{build-artifact-days-to-keep}'
390 artifactNumToKeep: '{build-artifact-num-to-keep}'
393 - gerrit-project-parameter:
395 - gerrit-refspec-parameter:
399 - integration-distribution-git-url
402 - integration-gerrit-scm:
403 credentials-id: '{ssh-credentials}'
404 basedir: '$GERRIT_PROJECT'
405 refspec: '$GERRIT_REFSPEC'
407 - integration-distribution-scm:
408 credentials-id: '{ssh-credentials}'
413 - ssh-agent-credentials:
415 - '{ssh-credentials}'
419 server-name: 'OpenDaylight'
421 - patchset-created-event:
422 exclude-drafts: 'true'
423 exclude-trivial-rebase: 'false'
424 exclude-no-code-change: 'true'
425 - draft-published-event
426 - comment-added-contains-event:
427 comment-contains-value: 'test-distribution'
428 - comment-added-contains-event:
429 comment-contains-value: 'reverify'
430 - comment-added-contains-event:
431 comment-contains-value: 'recheck'
433 - project-compare-type: 'ANT'
434 project-pattern: '{name}'
436 - branch-compare-type: 'ANT'
437 branch-pattern: '**/{branch}'
445 - wipe-org-opendaylight-repo
447 maven-version: '{mvn33}'
448 pom: '$GERRIT_PROJECT/pom.xml'
449 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}'
451 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
452 settings: '{defense4all-settings}'
453 global-settings: '{odl-global-settings}'
456 maven-name: '{mvn33}'
457 root-pom: 'distribution/pom.xml'
458 goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
459 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
460 settings: '{defense4all-settings}'
461 global-settings: '{odl-global-settings}'
462 ignore-upstream-changes: true
463 post-step-run-condition: 'SUCCESS'
466 - integration-distribution-check
470 artifacts: 'karaf.log'
472 artifacts: 'karaf_console.log'
473 - email-notification:
474 email-prefix: '[defense4all]'
477 name: 'defense4all-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}'
506 credentials-id: '{ssh-credentials}'
512 - ssh-agent-credentials:
514 - '{ssh-credentials}'
518 jobs: 'odlparent-merge-{stream}'
522 - wipe-org-opendaylight-repo
523 - jacoco-nojava-workaround
524 - provide-maven-settings:
525 global-settings-file: '{odl-global-settings}'
526 settings-file: '{defense4all-settings}'
529 maven-name: '{mvn33}'
530 root-pom: 'dfapp/pom.xml'
531 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins'
532 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
533 settings: '{defense4all-settings}'
534 global-settings: '{odl-global-settings}'
540 - email-notification:
541 email-prefix: '[defense4all] [odlparent]'
545 name: 'defense4all-sonar'
555 artifactDaysToKeep: '1'
556 artifactNumToKeep: '1'
564 credentials-id: '{ssh-credentials}'
570 - ssh-agent-credentials:
572 - '{ssh-credentials}'
576 - gerrit-trigger-patch-sonar:
580 - wipe-org-opendaylight-repo
581 - jacoco-nojava-workaround
582 - provide-maven-settings:
583 global-settings-file: '{odl-global-settings}'
584 settings-file: '{defense4all-settings}'
587 maven-name: '{mvn33}'
588 root-pom: 'dfapp/pom.xml'
589 goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dsonar'
590 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
591 settings: '{defense4all-settings}'
592 global-settings: '{odl-global-settings}'
600 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
601 - email-notification:
602 email-prefix: '[defense4all]'
606 name: 'defense4all-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}'
625 credentials-id: '{ssh-credentials}'
631 - ssh-agent-credentials:
633 - '{ssh-credentials}'
639 - wipe-org-opendaylight-repo
640 - provide-maven-settings:
641 global-settings-file: '{odl-global-settings}'
642 settings-file: '{defense4all-settings}'
645 maven-name: '{mvn33}'
647 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'
648 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
649 settings: '{defense4all-settings}'
650 global-settings: '{odl-global-settings}'
653 - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
655 application-name: defense4all
658 - email-notification:
659 email-prefix: '[defense4all]'
662 name: 'defense4all-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}'
681 - autorelease-release-tag:
682 release-tag: 'validate'
683 - autorelease-release-branch:
684 release-branch: '{branch}'
685 - autorelease-release-datestamp:
690 url: 'https://git.opendaylight.org/gerrit/releng/autorelease'
699 - autorelease-build-timeout
700 - ssh-agent-credentials:
702 - '{ssh-credentials}'
706 server-name: 'OpenDaylight'
708 - patchset-created-event:
709 exclude-drafts: 'false'
710 exclude-trivial-rebase: 'false'
711 exclude-no-code-change: 'false'
712 - draft-published-event
713 - comment-added-contains-event:
714 comment-contains-value: 'recheck'
715 - comment-added-contains-event:
716 comment-contains-value: 'reverify'
717 - comment-added-contains-event:
718 comment-contains-value: 'revalidate'
720 - project-compare-type: 'ANT'
721 project-pattern: 'defense4all'
723 - branch-compare-type: 'ANT'
724 branch-pattern: '**/{branch}'
730 - wipe-org-opendaylight-repo
731 - jacoco-nojava-workaround
732 - autorelease-checkout-gerrit-patch
733 - autorelease-generate-taglist
734 - autorelease-generate-release-patches
736 maven-version: '{mvn33}'
737 pom: validate-pom.xml
738 goals: 'clean install -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
741 settings: '{autorelease-settings}'
742 global-settings: '{odl-global-settings}'
745 maven-name: '{mvn33}'
747 goals: 'clean validate -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
748 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
749 settings: '{autorelease-settings}'
750 global-settings: '{odl-global-settings}'
751 automatic-archiving: false
752 post-step-run-condition: UNSTABLE
755 - shell: "./scripts/list-project-dependencies.sh"
756 - autorelease-sys-stats
761 - email-notification:
762 email-prefix: '[autorelease] [defense4all]'