Releasing Hibernate OGM

  • Make sure there are no outstanding issues in JIRA
  • Make sure that you have all the permission required to upload the packages on;
  • Make sure you use Java7 for the build (the created artifacts are compatible with Java 6)
  • Verify tests
    • mvn clean test
  • Build the assembly
    • mvn clean package assembly:assembly -DskipTests=true -DbuildDocs=true
  • Have a look at the distribution package as built by maven, you don't want to  have to rollback in the middle of the process. Especially check for dependencies in the package: the configuration for the assembly plugin (src/main/assembly/dist.xml) is very specific and might break with the inclusion of new dependencies. The dist directory of the distribution should contain the hibernate-ogm-core.jar. The subdirectories optional, required and provided should contain the corresponding dependencies; then one additional subdirector for each submodule specifics. This is the main point to check and needs to be performed manually.
  • JIRA
  • Readme.txt
    • verify it's up to date (especially the version number and date)
    • verify there are no broken links
  • Commit pending changes
  • Perform the Maven release
    • TODO - how to release properly including the docs?
    • Tag and build the release using the maven release plugin. During the release:prepare you will have to specify the tag name and release version (You have to make sure that you have permissons to deploy to the JBoss Maven repository and that you have your settings.xml configured accordingly) > mvn release:prepare > mvn release:perform Note: release:prepare will interactively ask for the release version and the tag name as well as the next developer version. release:perform will then checkout the tag, build the artifacts, upload them to the repository and also build the dist assembly.
  • Nexus
    • check all artifacts you expect are there
    • close and release the repository
  • Sourceforge
    • Copy the dist packages (they should be under target/checkout/target) to SourceForge and release them using the SourceForge web interface or using sftp (seeHibernateRelease35wMaven). You need to be member of the Hibernate project team of Sourceforge to do that. SFTP connection is recommended, the web uploader sometimes fails.
    • upload distribution, as described here
    • Copy the changelog.txt file as well
  • Verify the downloads against file corruption (TODO> add checksums)
  • Upload the documentation to docs.jboss.org. You should be able to use rsync to get the documentation via (provided you are in the docs directory of the unpacked distribution):> rsync -rv --delete --protocol=28 reference hibernate@filemgmt.jboss.org:/docs_htdocs/hibernate/ogm/<version>
    > rsync -rv --delete --protocol=28 api hibernate@filemgmt.jboss.org:/docs_htdocs/hibernate/ogm/<version>

    Alternatively, you can use scp

    > scp -r api hibernate@filemgmt.jboss.org:docs_htdocs/hibernate/ogm/<version>
    > scp -r reference hibernate@filemgmt.jboss.org:docs_htdocs/hibernate/ogm/<version>
  • If it is final release you have to add the symbolic link /docs_htdocs/hibernate/stable/ogm
  • Update the community pages. Check:     
  • Blog about release on in.relation.to (Make sure to use the tag 'Hibernate OGM', 'Hibernate' and 'news' for the blog entry. This way the blog will be featured http://www.hibernate.org/subprojects/ogm) and on the JBoss blog federation.
  • Send email to hibernate-dev and hibernate-announce
  • Twitter