3 name: autorelease-projects
5 - 'autorelease-release-{stream}'
6 - 'autorelease-generate-release-notes-{stream}'
10 next-release-tag: Nitrogen
13 integration-test: nitrogen
15 next-release-tag: Carbon
16 branch: 'stable/carbon'
18 integration-test: carbon
21 next-release-tag: Boron-SR4
22 branch: 'stable/boron'
24 integration-test: boron
27 # Only run once a week since Beryllium is in maintenance mode
29 next-release-tag: Beryllium-SR5
30 branch: 'stable/beryllium'
32 integration-test: beryllium
35 project: 'releng/autorelease'
44 # TODO: Remove this job once guava21 testing is complete
48 name: autorelease-projects-guava21
50 - 'autorelease-release-guava21-{stream}'
54 next-release-tag: Guava21-Testing
57 integration-test: carbon
59 project: 'releng/autorelease'
60 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
63 name: 'autorelease-release-guava21-{stream}'
65 project-type: freestyle
66 node: centos7-autorelease-4c-16g
70 - opendaylight-infra-properties:
71 build-days-to-keep: '30'
75 maven-version: 'mvn33'
76 - opendaylight-infra-parameters:
77 os-cloud: '{os-cloud}'
80 refspec: 'refs/heads/{branch}'
81 artifacts: '{archive-artifacts}'
82 - distribution-karaf-version:
83 karaf-version: '{karaf-version}'
84 - autorelease-release-tag:
85 release-tag: '{next-release-tag}'
86 - autorelease-release-branch:
87 release-branch: '{branch}'
91 credentials-id: 'opendaylight-jenkins-ssh'
93 refspec: '$GERRIT_REFSPEC'
96 choosing-strategy: 'gerrit'
103 - opendaylight-infra-wrappers:
104 build-timeout: '1440'
108 server-name: '{server-name}'
110 - comment-added-contains-event:
111 comment-contains-value: 'test-guava21-patches'
113 - project-compare-type: 'ANT'
114 project-pattern: '{project}'
116 - branch-compare-type: 'ANT'
117 branch-pattern: '**/{branch}'
128 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
132 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
136 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
140 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
144 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
148 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
152 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
156 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
160 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
164 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
168 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
172 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
175 # force jenkins install of maven version before any shell scripts use it
177 maven-version: 'mvn33'
179 settings: 'autorelease-settings'
181 global-settings: 'odl-global-settings'
182 global-settings-type: cfp
183 - wipe-local-maven-repo
184 - jacoco-nojava-workaround
185 - shell: "./scripts/list-project-dependencies.sh"
186 - autorelease-determine-merge-order
188 autorelease-settings: 'autorelease-settings'
189 odl-global-settings: 'odl-global-settings'
190 - autorelease-generate-taglist
191 - autorelease-distribute-taglist
192 - autorelease-generate-release-patches
193 # In a perfect world projects should be releasing separately and we consume them
194 # via a project that pulls the release bits from each project from Nexus.
195 # Keep the patches compatible with that ideal, but apply an edit
196 # to enable building in a single maven reactor afterwards.
197 - autorelease-fix-relative-paths
199 maven-version: 'mvn33'
202 clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins
203 -Dcheckstyle.skip=true
204 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
205 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
207 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
208 settings: 'autorelease-settings'
210 global-settings: 'odl-global-settings'
211 global-settings-type: cfp
212 - autorelease-maven-deploy
213 - autorelease-get-integration-test-variables
214 - autorelease-maven-sources:
215 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
216 maven-version: 'mvn33'
217 settings: 'autorelease-settings'
218 global-settings: 'odl-global-settings'
219 - autorelease-maven-sources-post-process
225 - email-notification:
226 email-recipients: '{email-recipients}'
227 email-prefix: '[autorelease]'
228 - trigger-parameterized-builds:
229 - project: 'integration-distribution-test-{integration-test}'
230 condition: UNSTABLE_OR_BETTER
231 property-file: variables.jenkins-trigger
232 fail-on-missing: true
233 - opendaylight-infra-shiplogs:
234 maven-version: 'mvn33'
238 # TODO: Remove this job once carbon tests failures are resolved
239 # This jobs skips all tests and is intended to stage artifacts for integration
244 name: autorelease-projects-notests
246 - 'autorelease-release-notests-{stream}'
250 next-release-tag: Carbon
251 branch: 'stable/carbon'
253 integration-test: carbon
254 karaf-version: karaf3
257 project: 'releng/autorelease'
258 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
261 # Autorelease build jobs
263 name: 'autorelease-release-notests-{stream}'
265 project-type: freestyle
266 node: centos7-autorelease-4c-16g
274 artifact-num-to-keep: 1
275 # Make sure we only archive the last artifact until we figure out why
276 # autorelease carbon is not generating a staging repo.
277 # - opendaylight-infra-properties:
278 # build-days-to-keep: '30'
282 maven-version: 'mvn33'
283 - opendaylight-infra-parameters:
284 os-cloud: '{os-cloud}'
287 refspec: 'refs/heads/{branch}'
288 artifacts: '{archive-artifacts}'
289 - distribution-karaf-version:
290 karaf-version: '{karaf-version}'
291 - autorelease-release-tag:
292 release-tag: '{next-release-tag}'
293 - autorelease-release-branch:
294 release-branch: '{branch}'
298 credentials-id: 'opendaylight-jenkins-ssh'
300 refspec: '$GERRIT_REFSPEC'
303 choosing-strategy: 'gerrit'
310 - opendaylight-infra-wrappers:
311 build-timeout: '1440'
317 # force jenkins install of maven version before any shell scripts use it
319 maven-version: 'mvn33'
321 settings: 'autorelease-settings'
323 global-settings: 'odl-global-settings'
324 global-settings-type: cfp
325 - wipe-local-maven-repo
326 - jacoco-nojava-workaround
327 - shell: "./scripts/list-project-dependencies.sh"
328 - autorelease-determine-merge-order
330 autorelease-settings: 'autorelease-settings'
331 odl-global-settings: 'odl-global-settings'
332 - autorelease-generate-taglist
333 - autorelease-distribute-taglist
334 - distribute-build-url:
335 path: 'integration/distribution/$KARAF_ARTIFACT/src/main/assembly'
336 - autorelease-generate-release-patches
337 # In a perfect world projects should be releasing separately and we consume them
338 # via a project that pulls the release bits from each project from Nexus.
339 # Keep the patches compatible with that ideal, but apply an edit
340 # to enable building in a single maven reactor afterwards.
341 - autorelease-fix-relative-paths
343 maven-version: 'mvn33'
347 -Pintegrationtests,docs,repoBuild
348 -Dcheckstyle.skip=true
350 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
351 {opendaylight-infra-mvn-opts}
353 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
354 settings: 'autorelease-settings'
356 global-settings: 'odl-global-settings'
357 global-settings-type: cfp
358 - autorelease-maven-deploy
359 - autorelease-get-integration-test-variables
360 - autorelease-maven-sources:
361 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
362 maven-version: 'mvn33'
363 settings: 'autorelease-settings'
364 global-settings: 'odl-global-settings'
365 - autorelease-maven-sources-post-process
371 - opendaylight-infra-notify-status
372 - opendaylight-infra-sysstats
374 # Need to archive dependencies.log in Jenkins to provide a simple
375 # way for downstream jobs to pull the latest version of this file
377 # TODO stop archiving **/*.zip once we figure out why artifacts are
378 # not deploying to Nexus
379 artifacts: 'dependencies.log, **/*.zip, /var/log/sa/*'
380 - opendaylight-infra-shiplogs:
381 maven-version: 'mvn33'
385 # TODO: Remove this job once carbon tests failures are resolved
386 # This jobs uses -fn (fail never) and is intended to run the build until
387 # complition without being intruptted on test failures.
391 name: autorelease-projects-failnever
393 - 'autorelease-release-failnever-{stream}'
397 next-release-tag: Carbon
398 branch: 'stable/carbon'
400 integration-test: carbon
401 karaf-version: karaf3
403 project: 'releng/autorelease'
404 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
407 # Autorelease build jobs
409 name: 'autorelease-release-failnever-{stream}'
411 project-type: freestyle
412 node: centos7-autorelease-4c-16g
420 artifact-num-to-keep: 1
421 # Make sure we only archive the last artifact until we figure out why
422 # autorelease carbon is not generating a staging repo.
423 # - opendaylight-infra-properties:
424 # build-days-to-keep: '30'
428 maven-version: 'mvn33'
429 - opendaylight-infra-parameters:
430 os-cloud: '{os-cloud}'
433 refspec: 'refs/heads/{branch}'
434 artifacts: '{archive-artifacts}'
435 - distribution-karaf-version:
436 karaf-version: '{karaf-version}'
437 - autorelease-release-tag:
438 release-tag: '{next-release-tag}'
439 - autorelease-release-branch:
440 release-branch: '{branch}'
444 credentials-id: 'opendaylight-jenkins-ssh'
446 refspec: '$GERRIT_REFSPEC'
449 choosing-strategy: 'gerrit'
456 - opendaylight-infra-wrappers:
457 build-timeout: '1440'
463 # force jenkins install of maven version before any shell scripts use it
465 maven-version: 'mvn33'
467 settings: 'autorelease-settings'
469 global-settings: 'odl-global-settings'
470 global-settings-type: cfp
471 - wipe-local-maven-repo
472 - jacoco-nojava-workaround
473 - shell: "./scripts/list-project-dependencies.sh"
474 - autorelease-determine-merge-order
476 autorelease-settings: 'autorelease-settings'
477 odl-global-settings: 'odl-global-settings'
478 - autorelease-generate-taglist
479 - autorelease-distribute-taglist
480 - distribute-build-url:
481 path: 'integration/distribution/$KARAF_ARTIFACT/src/main/assembly'
482 - autorelease-generate-release-patches
483 # In a perfect world projects should be releasing separately and we consume them
484 # via a project that pulls the release bits from each project from Nexus.
485 # Keep the patches compatible with that ideal, but apply an edit
486 # to enable building in a single maven reactor afterwards.
487 - autorelease-fix-relative-paths
489 maven-version: 'mvn33'
493 -Pintegrationtests,docs,repoBuild
494 -Dcheckstyle.skip=true
495 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
496 -Dskip.karaf.featureTest=true
498 {opendaylight-infra-mvn-opts}
500 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
501 settings: 'autorelease-settings'
503 global-settings: 'odl-global-settings'
504 global-settings-type: cfp
505 - autorelease-maven-deploy
506 - autorelease-get-integration-test-variables
507 - autorelease-maven-sources:
508 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
509 maven-version: 'mvn33'
510 settings: 'autorelease-settings'
511 global-settings: 'odl-global-settings'
512 - autorelease-maven-sources-post-process
518 - opendaylight-infra-notify-status
519 - opendaylight-infra-sysstats
521 # Need to archive dependencies.log in Jenkins to provide a simple
522 # way for downstream jobs to pull the latest version of this file
524 # TODO stop archiving **/*.zip once we figure out why artifacts are
525 # not deploying to Nexus
526 artifacts: 'dependencies.log, **/*.zip, /var/log/sa/*'
527 - opendaylight-infra-shiplogs:
528 maven-version: 'mvn33'