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 - 'openflowplugin-verify-{stream}'
10 - 'openflowplugin-merge-{stream}'
11 - 'openflowplugin-daily-{stream}'
12 - 'openflowplugin-distribution-{stream}'
13 - 'openflowplugin-integration-{stream}'
14 - 'openflowplugin-sonar'
15 - 'openflowplugin-clm-{stream}'
16 - 'openflowplugin-validate-autorelease-{stream}'
19 # stream: release stream (eg. stable-lithium or beryllium)
20 # branch: git branch (eg. stable/lithium or master)
28 disable_autorelease: True
35 disable_autorelease: False
37 branch: 'stable/lithium'
42 disable_autorelease: True
44 branch: 'stable/helium'
48 disable_autorelease: True
50 project: 'openflowplugin'
52 # For the Job templates below replace instances of:
53 # PROJECT_SHORTNAME with your project name (eg. circuitsw)
54 # PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
55 # MAVEN_GOALS with your maven goals to build
56 # MAVEN_OPTS with your maven options to build
59 name: 'openflowplugin-verify-{stream}'
61 # Job template for ODL verify jobs
63 # The purpose of this job template is to setup a ODL verify job
66 # stream: release stream (eg. stable-lithium or beryllium)
67 # branch: git branch (eg. stable/lithium or master)
84 daysToKeep: '{build-days-to-keep}'
85 numToKeep: '{build-num-to-keep}'
86 artifactDaysToKeep: '{build-artifact-days-to-keep}'
87 artifactNumToKeep: '{build-artifact-num-to-keep}'
97 credentials-id: '{ssh-credentials}'
98 refspec: '$GERRIT_REFSPEC'
99 choosing-strategy: 'gerrit'
103 - ssh-agent-credentials:
105 - '{ssh-credentials}'
108 - gerrit-trigger-patch-submitted:
109 name: 'openflowplugin'
113 - wipe-org-opendaylight-repo
114 - jacoco-nojava-workaround
115 - provide-maven-settings:
116 global-settings-file: '{odl-global-settings}'
117 settings-file: '{openflowplugin-settings}'
119 maven-version: '{mvn33}'
121 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate -Dstream={stream}'
123 - '-Xmx1024m -XX:MaxPermSize=256m'
124 settings: '{openflowplugin-settings}'
125 global-settings: '{odl-global-settings}'
129 - email-notification:
130 email-prefix: '[openflowplugin]'
134 name: 'openflowplugin-merge-{stream}'
136 # Job template for ODL merge jobs
138 # The purpose of this job template is to setup a ODL merge job
139 # and deploy artifacts to Nexus.
141 # Required Variables:
142 # stream: release stream (eg. stable-lithium or beryllium)
143 # branch: git branch (eg. stable/lithium or master)
150 daysToKeep: '{build-days-to-keep}'
151 numToKeep: '{build-num-to-keep}'
152 artifactDaysToKeep: '{build-artifact-days-to-keep}'
153 artifactNumToKeep: '{build-artifact-num-to-keep}'
160 - gerrit-trigger-scm:
161 credentials-id: '{ssh-credentials}'
163 choosing-strategy: 'default'
167 - ssh-agent-credentials:
169 - '{ssh-credentials}'
172 - gerrit-trigger-patch-merged:
173 name: 'openflowplugin'
177 - wipe-org-opendaylight-repo
178 - jacoco-nojava-workaround
179 - provide-maven-settings:
180 global-settings-file: '{odl-global-settings}'
181 settings-file: '{openflowplugin-settings}'
184 maven-name: '{mvn33}'
186 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate -Dmerge -Dstream={stream}'
187 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
188 settings: '{openflowplugin-settings}'
189 global-settings: '{odl-global-settings}'
190 post-step-run-condition: UNSTABLE
194 condition-kind: file-exists
195 condition-filename: deploy-site.xml
196 condition-basedir: workspace
198 # The strategy here is intentional to run Maven site:deploy twice
199 # once using regular pom.xml to produce a staged-site which is
200 # then used by deploy-site.xml to push to Nexus. This is a
201 # workaround to Maven Site's default linking code which creates
202 # incorrect URLs for sites due to auto-detection assuming your
203 # project is configured in a certain way which ODL is not.
206 maven-version: '{mvn33}'
208 goals: 'site:deploy -Dstream={stream}'
211 settings: '{openflowplugin-settings}'
212 global-settings: '{odl-global-settings}'
214 maven-version: '{mvn33}'
216 goals: 'site:deploy -Dstream={stream}'
219 settings: '{openflowplugin-settings}'
220 global-settings: '{odl-global-settings}'
227 artifacts: 'model/*/target/site/**'
228 - email-notification:
229 email-prefix: '[openflowplugin]'
233 deploy-unstable: false
237 name: 'openflowplugin-daily-{stream}'
239 # Job template for daily builders
241 # The purpose of this job template is to setup a daily/nightly
242 # builder and pushes to Sonar analysis.
244 # Required Variables:
245 # stream: release stream (eg. stable-lithium or beryllium)
246 # branch: git branch (eg. stable/lithium or master)
253 daysToKeep: '{build-days-to-keep}'
254 numToKeep: '{build-num-to-keep}'
255 artifactDaysToKeep: '{build-artifact-days-to-keep}'
256 artifactNumToKeep: '{build-artifact-num-to-keep}'
264 credentials-id: '{ssh-credentials}'
270 - ssh-agent-credentials:
272 - '{ssh-credentials}'
278 - wipe-org-opendaylight-repo
279 - jacoco-nojava-workaround
280 - provide-maven-settings:
281 global-settings-file: '{odl-global-settings}'
282 settings-file: '{openflowplugin-settings}'
285 maven-name: '{mvn33}'
287 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate'
288 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
289 settings: '{openflowplugin-settings}'
290 global-settings: '{odl-global-settings}'
296 - email-notification:
297 email-prefix: '[openflowplugin]'
301 name: 'openflowplugin-distribution-{stream}'
303 # Required variables:
304 # stream: release stream (eg. stable-lithium or beryllium)
305 # branch: git branch (eg. stable/lithium or master)
312 daysToKeep: '{build-days-to-keep}'
313 numToKeep: '{build-num-to-keep}'
314 artifactDaysToKeep: '{build-artifact-days-to-keep}'
315 artifactNumToKeep: '{build-artifact-num-to-keep}'
319 project: 'integration/distribution'
323 credentials-id: '{ssh-credentials}'
329 - ssh-agent-credentials:
331 - '{ssh-credentials}'
335 jobs: '{project}-merge-{stream}'
339 - wipe-org-opendaylight-repo
340 - provide-maven-settings:
341 global-settings-file: '{odl-global-settings}'
342 settings-file: '{openflowplugin-settings}'
345 maven-name: '{mvn33}'
347 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install'
348 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
349 settings: '{integration-settings}'
350 global-settings: '{odl-global-settings}'
353 - email-notification:
354 email-prefix: '[{project}]'
358 deploy-unstable: false
361 name: 'openflowplugin-integration-{stream}'
364 # Job template for ODL integration verify jobs
366 # This is similar to a normal verify job, but it runs
367 # when a project that's a dependency of your project
368 # is successfully built.
370 # Required Variables:
371 # stream: release stream (eg. stable-lithium or beryllium)
372 # branch: git branch (eg. stable/lithium or master)
379 daysToKeep: '{build-days-to-keep}'
380 numToKeep: '{build-num-to-keep}'
381 artifactDaysToKeep: '{build-artifact-days-to-keep}'
382 artifactNumToKeep: '{build-artifact-num-to-keep}'
390 credentials-id: '{ssh-credentials}'
396 - ssh-agent-credentials:
398 - '{ssh-credentials}'
402 jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},openflowjava-merge-{stream}'
406 - wipe-org-opendaylight-repo
407 - jacoco-nojava-workaround
408 - provide-maven-settings:
409 global-settings-file: '{odl-global-settings}'
410 settings-file: '{openflowplugin-settings}'
413 maven-name: '{mvn33}'
415 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate'
416 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
417 settings: '{openflowplugin-settings}'
418 global-settings: '{odl-global-settings}'
424 - email-notification:
425 email-prefix: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
429 name: 'openflowplugin-sonar'
438 artifactDaysToKeep: '1'
439 artifactNumToKeep: '1'
447 credentials-id: '{ssh-credentials}'
453 - ssh-agent-credentials:
455 - '{ssh-credentials}'
459 - gerrit-trigger-patch-sonar:
460 name: 'openflowplugin'
463 - wipe-org-opendaylight-repo
464 - jacoco-nojava-workaround
465 - provide-maven-settings:
466 global-settings-file: '{odl-global-settings}'
467 settings-file: '{openflowplugin-settings}'
470 maven-name: '{mvn33}'
472 goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install javadoc:aggregate -Dsonar'
473 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
474 settings: '{openflowplugin-settings}'
475 global-settings: '{odl-global-settings}'
483 maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
484 - email-notification:
485 email-prefix: '[openflowplugin]'
489 name: 'openflowplugin-clm-{stream}'
496 daysToKeep: '{build-days-to-keep}'
497 numToKeep: '{build-num-to-keep}'
498 artifactDaysToKeep: '{build-artifact-days-to-keep}'
499 artifactNumToKeep: '{build-artifact-num-to-keep}'
507 credentials-id: '{ssh-credentials}'
513 - ssh-agent-credentials:
515 - '{ssh-credentials}'
521 - wipe-org-opendaylight-repo
522 - provide-maven-settings:
523 global-settings-file: '{odl-global-settings}'
524 settings-file: '{openflowplugin-settings}'
527 maven-name: '{mvn33}'
529 goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
530 maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
531 settings: '{openflowplugin-settings}'
532 global-settings: '{odl-global-settings}'
536 application-name: openflowplugin
539 - email-notification:
540 email-prefix: '[openflowplugin]'
543 name: 'openflowplugin-validate-autorelease-{stream}'
544 disabled: '{obj:disable_autorelease}'
552 daysToKeep: '{build-days-to-keep}'
553 numToKeep: '{build-num-to-keep}'
554 artifactDaysToKeep: '{build-artifact-days-to-keep}'
555 artifactNumToKeep: '{build-artifact-num-to-keep}'
562 - autorelease-release-tag:
563 release-tag: 'validate'
564 - autorelease-release-branch:
565 release-branch: '{branch}'
566 - autorelease-release-datestamp:
571 url: 'https://git.opendaylight.org/gerrit/releng/autorelease'
580 - autorelease-build-timeout
581 - ssh-agent-credentials:
583 - '{ssh-credentials}'
586 - gerrit-trigger-patch-submitted:
587 name: 'openflowplugin'
591 - wipe-org-opendaylight-repo
592 - jacoco-nojava-workaround
593 - autorelease-checkout-gerrit-patch
594 - autorelease-generate-taglist
595 - autorelease-generate-release-patches
597 maven-version: '{mvn33}'
598 pom: validate-pom.xml
599 goals: 'clean install -T1.5C -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
602 settings: '{autorelease-settings}'
603 global-settings: '{odl-global-settings}'
606 maven-name: '{mvn33}'
608 goals: 'clean validate -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
609 maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
610 settings: '{autorelease-settings}'
611 global-settings: '{odl-global-settings}'
612 automatic-archiving: false
613 post-step-run-condition: UNSTABLE
616 - shell: "./scripts/list-project-dependencies.sh"
617 - autorelease-sys-stats
622 - email-notification:
623 email-prefix: '[autorelease] [openflowplugin]'