3 name: autorelease-projects
5 - 'autorelease-release-{stream}'
9 next-release-tag: Nitrogen
12 integration-test: nitrogen
14 next-release-tag: Carbon
15 branch: 'stable/carbon'
17 integration-test: carbon
20 next-release-tag: Boron-SR4
21 branch: 'stable/boron'
23 integration-test: boron
26 # Only run once a week since Beryllium is in maintenance mode
28 next-release-tag: Beryllium-SR5
29 branch: 'stable/beryllium'
31 integration-test: beryllium
34 project: 'releng/autorelease'
42 # TODO: Remove this job once guava21 testing is complete
46 name: autorelease-projects-guava21
48 - 'autorelease-release-guava21-{stream}'
52 next-release-tag: Guava21-Testing
55 integration-test: carbon
57 project: 'releng/autorelease'
58 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
61 name: 'autorelease-release-guava21-{stream}'
63 project-type: freestyle
64 node: centos7-autorelease-4c-16g
68 - opendaylight-infra-properties:
69 build-days-to-keep: '30'
73 maven-version: 'mvn33'
74 - opendaylight-infra-parameters:
75 os-cloud: '{os-cloud}'
78 refspec: 'refs/heads/{branch}'
79 artifacts: '{archive-artifacts}'
80 - distribution-karaf-version:
81 karaf-version: '{karaf-version}'
82 - autorelease-release-tag:
83 release-tag: '{next-release-tag}'
84 - autorelease-release-branch:
85 release-branch: '{branch}'
89 credentials-id: 'opendaylight-jenkins-ssh'
91 refspec: '$GERRIT_REFSPEC'
94 choosing-strategy: 'gerrit'
101 - opendaylight-infra-wrappers:
102 build-timeout: '1440'
106 server-name: '{server-name}'
108 - comment-added-contains-event:
109 comment-contains-value: 'test-guava21-patches'
111 - project-compare-type: 'ANT'
112 project-pattern: '{project}'
114 - branch-compare-type: 'ANT'
115 branch-pattern: '**/{branch}'
126 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
130 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
134 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
138 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
142 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
146 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
150 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
154 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
158 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
162 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
166 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
170 git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
173 # force jenkins install of maven version before any shell scripts use it
175 maven-version: 'mvn33'
177 settings: 'autorelease-settings'
179 global-settings: 'odl-global-settings'
180 global-settings-type: cfp
181 - wipe-local-maven-repo
182 - jacoco-nojava-workaround
183 - shell: "./scripts/list-project-dependencies.sh"
184 - autorelease-determine-merge-order
186 autorelease-settings: 'autorelease-settings'
187 odl-global-settings: 'odl-global-settings'
188 - autorelease-generate-taglist
189 - autorelease-distribute-taglist
190 - autorelease-generate-release-patches
191 # In a perfect world projects should be releasing separately and we consume them
192 # via a project that pulls the release bits from each project from Nexus.
193 # Keep the patches compatible with that ideal, but apply an edit
194 # to enable building in a single maven reactor afterwards.
195 - autorelease-fix-relative-paths
197 maven-version: 'mvn33'
200 clean deploy -V -B -Pintegrationtests,docs,repoBuild -Djenkins
201 -Dcheckstyle.skip=true
202 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
203 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
205 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
206 settings: 'autorelease-settings'
208 global-settings: 'odl-global-settings'
209 global-settings-type: cfp
210 - autorelease-maven-deploy
211 - autorelease-get-integration-test-variables
212 - autorelease-maven-sources:
213 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
214 maven-version: 'mvn33'
215 settings: 'autorelease-settings'
216 global-settings: 'odl-global-settings'
217 - autorelease-maven-sources-post-process
223 - email-notification:
224 email-recipients: '{email-recipients}'
225 email-prefix: '[autorelease]'
226 - trigger-parameterized-builds:
227 - project: 'integration-distribution-test-{integration-test}'
228 condition: UNSTABLE_OR_BETTER
229 property-file: variables.jenkins-trigger
230 fail-on-missing: true
231 - opendaylight-infra-shiplogs:
232 maven-version: 'mvn33'
236 # TODO: Remove this job once carbon tests failures are resolved
237 # This jobs skips all tests and is intended to stage artifacts for integration
242 name: autorelease-projects-notests
244 - 'autorelease-release-notests-{stream}'
248 next-release-tag: Carbon
249 branch: 'stable/carbon'
251 integration-test: carbon
252 karaf-version: karaf3
255 project: 'releng/autorelease'
256 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
259 # Autorelease build jobs
261 name: 'autorelease-release-notests-{stream}'
263 project-type: freestyle
264 node: centos7-autorelease-4c-16g
272 artifact-num-to-keep: 1
273 # Make sure we only archive the last artifact until we figure out why
274 # autorelease carbon is not generating a staging repo.
275 # - opendaylight-infra-properties:
276 # build-days-to-keep: '30'
280 maven-version: 'mvn33'
281 - opendaylight-infra-parameters:
282 os-cloud: '{os-cloud}'
285 refspec: 'refs/heads/{branch}'
286 artifacts: '{archive-artifacts}'
287 - distribution-karaf-version:
288 karaf-version: '{karaf-version}'
289 - autorelease-release-tag:
290 release-tag: '{next-release-tag}'
291 - autorelease-release-branch:
292 release-branch: '{branch}'
296 credentials-id: 'opendaylight-jenkins-ssh'
298 refspec: '$GERRIT_REFSPEC'
301 choosing-strategy: 'gerrit'
308 - opendaylight-infra-wrappers:
309 build-timeout: '1440'
315 # force jenkins install of maven version before any shell scripts use it
317 maven-version: 'mvn33'
319 settings: 'autorelease-settings'
321 global-settings: 'odl-global-settings'
322 global-settings-type: cfp
323 - wipe-local-maven-repo
324 - jacoco-nojava-workaround
325 - shell: "./scripts/list-project-dependencies.sh"
326 - autorelease-determine-merge-order
328 autorelease-settings: 'autorelease-settings'
329 odl-global-settings: 'odl-global-settings'
330 - autorelease-generate-taglist
331 - autorelease-distribute-taglist
332 - distribute-build-url:
333 path: 'integration/distribution/$KARAF_ARTIFACT/src/main/assembly'
334 - autorelease-generate-release-patches
335 # In a perfect world projects should be releasing separately and we consume them
336 # via a project that pulls the release bits from each project from Nexus.
337 # Keep the patches compatible with that ideal, but apply an edit
338 # to enable building in a single maven reactor afterwards.
339 - autorelease-fix-relative-paths
341 maven-version: 'mvn33'
345 -Pintegrationtests,docs,repoBuild
346 -Dcheckstyle.skip=true
348 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
349 {opendaylight-infra-mvn-opts}
351 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
352 settings: 'autorelease-settings'
354 global-settings: 'odl-global-settings'
355 global-settings-type: cfp
356 - autorelease-maven-deploy
357 - autorelease-get-integration-test-variables
358 - autorelease-maven-sources:
359 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
360 maven-version: 'mvn33'
361 settings: 'autorelease-settings'
362 global-settings: 'odl-global-settings'
363 - autorelease-maven-sources-post-process
369 - opendaylight-infra-notify-status
370 - opendaylight-infra-sysstats
372 # Need to archive dependencies.log in Jenkins to provide a simple
373 # way for downstream jobs to pull the latest version of this file
375 # TODO stop archiving **/*.zip once we figure out why artifacts are
376 # not deploying to Nexus
377 artifacts: 'dependencies.log, **/*.zip, /var/log/sa/*'
378 - opendaylight-infra-shiplogs:
379 maven-version: 'mvn33'
383 # TODO: Remove this job once carbon tests failures are resolved
384 # This jobs uses -fn (fail never) and is intended to run the build until
385 # complition without being intruptted on test failures.
389 name: autorelease-projects-failnever
391 - 'autorelease-release-failnever-{stream}'
395 next-release-tag: Carbon
396 branch: 'stable/carbon'
398 integration-test: carbon
399 karaf-version: karaf3
401 project: 'releng/autorelease'
402 archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
405 # Autorelease build jobs
407 name: 'autorelease-release-failnever-{stream}'
409 project-type: freestyle
410 node: centos7-autorelease-4c-16g
418 artifact-num-to-keep: 1
419 # Make sure we only archive the last artifact until we figure out why
420 # autorelease carbon is not generating a staging repo.
421 # - opendaylight-infra-properties:
422 # build-days-to-keep: '30'
426 maven-version: 'mvn33'
427 - opendaylight-infra-parameters:
428 os-cloud: '{os-cloud}'
431 refspec: 'refs/heads/{branch}'
432 artifacts: '{archive-artifacts}'
433 - distribution-karaf-version:
434 karaf-version: '{karaf-version}'
435 - autorelease-release-tag:
436 release-tag: '{next-release-tag}'
437 - autorelease-release-branch:
438 release-branch: '{branch}'
442 credentials-id: 'opendaylight-jenkins-ssh'
444 refspec: '$GERRIT_REFSPEC'
447 choosing-strategy: 'gerrit'
454 - opendaylight-infra-wrappers:
455 build-timeout: '1440'
461 # force jenkins install of maven version before any shell scripts use it
463 maven-version: 'mvn33'
465 settings: 'autorelease-settings'
467 global-settings: 'odl-global-settings'
468 global-settings-type: cfp
469 - wipe-local-maven-repo
470 - jacoco-nojava-workaround
471 - shell: "./scripts/list-project-dependencies.sh"
472 - autorelease-determine-merge-order
474 autorelease-settings: 'autorelease-settings'
475 odl-global-settings: 'odl-global-settings'
476 - autorelease-generate-taglist
477 - autorelease-distribute-taglist
478 - distribute-build-url:
479 path: 'integration/distribution/$KARAF_ARTIFACT/src/main/assembly'
480 - autorelease-generate-release-patches
481 # In a perfect world projects should be releasing separately and we consume them
482 # via a project that pulls the release bits from each project from Nexus.
483 # Keep the patches compatible with that ideal, but apply an edit
484 # to enable building in a single maven reactor afterwards.
485 - autorelease-fix-relative-paths
487 maven-version: 'mvn33'
491 -Pintegrationtests,docs,repoBuild
492 -Dcheckstyle.skip=true
493 -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
495 {opendaylight-infra-mvn-opts}
497 - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
498 settings: 'autorelease-settings'
500 global-settings: 'odl-global-settings'
501 global-settings-type: cfp
502 - autorelease-maven-deploy
503 - autorelease-get-integration-test-variables
504 - autorelease-maven-sources:
505 opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
506 maven-version: 'mvn33'
507 settings: 'autorelease-settings'
508 global-settings: 'odl-global-settings'
509 - autorelease-maven-sources-post-process
515 - opendaylight-infra-notify-status
516 - opendaylight-infra-sysstats
518 # Need to archive dependencies.log in Jenkins to provide a simple
519 # way for downstream jobs to pull the latest version of this file
521 # TODO stop archiving **/*.zip once we figure out why artifacts are
522 # not deploying to Nexus
523 artifacts: 'dependencies.log, **/*.zip, /var/log/sa/*'
524 - opendaylight-infra-shiplogs:
525 maven-version: 'mvn33'