Skip to content
James Agnew edited this page May 28, 2018 · 21 revisions

This page outlines the process for creating a new release of HAPI FHIR.

  • Make sure you have the latest version checked out
mvn pull
  • Create a release announcement and add it to /src/site/xdoc/index.xml
    • Note: There is no hard rule about what to include in the list of changes, since technically it's just duplication for what's in the changelog. Any major feature enhancements, breaking changes, interesting outside contributions, etc. are all good candidates. I always do a scan of the changlog and pick out the highlights.
    • Note: Make sure any links in these notes are absolute links. These notes get copied a few places, and relative links cause subtle problems.
  • Update the Maven project version in the pom.xml files (the command below updates all pom.xml files in the project)
# Put the real version number instead of 3.4.0 below!
mvn versions:set -DnewVersion=3.4.0
  • Check pom.xml to make sure that the version got correctly set
  • Build the release once more to make sure it builds
nice -n 20 mvn -P ALLMODULES,DIST -Dgpg.passphrase=PASS clean install
  • Update the date in src/changes/changes.xml under the new release number to be today's date in the format YYYY-MM-DD
  • Commit and push
git add .
git commit
git push
  • Push a build to the Maven repos
nice -n 20 mvn -P ALLMODULES,DIST -Dgpg.passphrase=PASS -Dmaven.test.skip clean deploy
  • Deploy the release to the OSS repo

    • Navigate to: https://oss.sonatype.org/#welcome
    • Log in
    • Click "Staging Repositories" on the left hand side
    • Select the HAPI release and click "close"
    • Wait a few minutes for the release to actually close. This takes up to 5 mins (you can do further steps below while you wait)
    • Click "refresh". If it shows as closed you are ready to move to the "release" step.
    • Click "release".
    • You can test whether the release is live by visiting http://search.maven.org/ , but note that releases typically take up to 24 hours to propagate.
  • Create a new release by navigating to New Release

    • Give a tag similar to v3.4.0
    • Copy the release announcement from the index.html file, but make sure to remove any leading whitespace (the HTML will be treated as normal HTML if you trim the leading whitespace. Check the preview view to make sure you got it correctly.)