Skip to content

Release Procedures

Daniele Romagnoli edited this page Mar 19, 2014 · 6 revisions

This wiki page is to describe the various release processese for the ImageIO-Ext Project.

Stable Release

Required additional libraries

Make sure you have the jsch jar required to run the SCP ant task.
You can download it here
Once downloaded, make sure to copy it within the lib folder of your ANT installation.

Preliminary steps

Make sure to prepare proper subfolders needed by the next release steps. More information are available here

Release steps

  1. Select the release branch for the version you want to release, e.g. 1.1.x and prepare a tag as follows
  2. Edit the file rename.xml located at the root dir of the source and change the target version to match the new release versions
    make sure to properly customize the fromVersion and toVersion properties
  3. Run ant -f rename.xml which will rename the artifact's version all together as well as the name of the folders which will contains the packages to be released.
  4. Add, commit and push the change made for the release.
  5. Then create a tag for this commit: git tag A.B.C -a -m "Tagging A.B.C release" as an instance: git tag 1.1.6 -a -m "Tagging 1.1.6 release" and finally push the tag. git push --tags
  6. edit again the rename.xml to go back to the SNAPSHOT version, run the ant task and commit and pushes the changes as done in steps 3, 4.
  7. At this stage, I would download the tag (https://github.com/geosolutions-it/imageio-ext/tags) and work inside it.
  8. Do a full build with mvn clean install -Preleasebuild
  9. Make sure you have proper maven settings.xml configured to deploy on the proper servers.
  10. Deploy on GeoSolutions Maven repository mvn deploy -Pdeploygeosolutions,releasebuild
  11. Deploy on OSGEO Maven repository mvn deploy -Pdeployosgeo,releasebuild
  12. Put together the JARs to be shipped. cd release -> mvn clean install -Prelease so that release/target/dependencies contains all JARs to be shipped
  13. Go back to the main folder and create the javadocs as a zip inside target/release with mvn -Preleasebuild javadoc:aggregate assembly:attached -DskipTests
  14. Carefully check the release.xml descriptor contains the proper property values to remotely deploy all the required packages. Check the host, remoteReleasePath, user and password properties are properly set as suggested here, page 2
  15. Start the remote deployment with ant -f release.xml which will cleanup, copy, and deploy all the required zip files. (Notice that the final SCP ant task may require some minutes since it needs to upload almost 20MB) Notice that you will need to set up proper accounts for the various repos on which you want to upload artifacts.
  16. Update the release page with proper versions and links: https://github.com/geosolutions-it/imageio-ext/wiki/Releases

Snapshot Release

TODO

Milestone Release

TODO