Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The release version in the documentation below is identified as X.Y.Z , replace this in the instructions with the current release (eg 4.0.1).
X is the major point version, Y is the minor point version, and Z is the maintenance point.

...

Based on the modules to be released, create a release process spreadsheet like this.

Release Order

Due to dependency chains, the following release order is required.  Furthermore, the artifacts of dependencies must be propagated to maven central before the next one can be released.

  1. fcrepo-build-tools: if schedule for a release, must be handled first since it's version number is present in the other modules
  2. fcrepo4: the main project, always part of a release, takes the vast majority of the time (also push gh-pages)
  3. fcrepo-message-consumer (also push gh-pages)
  4. fcrepo-module-auth-rbacl (also push gh-pages)
  5. fcrepo-module-auth-xacml (also push gh-pages)
  6. fcrepo-module-auth-webac (also push gh-pages)
  7. ontology (no push to sonatype)
  8. fcrepo-webac-ontology (no push to sonatype)
  9. --- exts below
  10. fcrepo-camel (also push gh-pages)
  11. fcrepo-camel-toolbox (also push gh-pages)
  12. fcrepo-webapp-plus (no push to sonatype)
  13. fcrepo-audit (also push gh-pages)
  14. fcrepo-indexing-ontology (no push to sonatype)
  15. fcrepo-audit-ontology (no push to sonatype)
  16. migration-utils (ditto)
  17. fcrepo4-vagrant (update versions)
  18. --- labs below
  19. fcrepo4-client (also push gh-pages)
  20. fcrepo4-release-tests (ditto)
  21. fcrepo4-oaiprovider (ditto)
  22. fcrepo4-swordserver (ditto)
  23. fcrepo-oai-pmh-ontology (no push to sonatype)

these:

Notes: 

  1. Follow the release order of the spreadsheet plan
  2. Some projects need pom.xml dependency version properties to be updated prior to release (e.g. fcrepo-camel-toolbox). This should be documented starting with 4.4.1.

Merge the release candidate branch into master (if any commits were made)

Code Block
git checkout release-4.0.0
git pull origin release-4.0.0
git checkout master
git merge release-4.0.0
git push origin master
git branch -d release-4.0.0
git push origin :release-4.0.0

...

Build and release the final distribution to Maven Central

...