How to Release 3.18
From OTBWiki
Contents
Release Candidate preparation
J-2
-
Update version numbers in CMakeLists.txt for OTB (and Monteverdi, OTB-Wrapping if needed) -
Update version numbers in doxygen -
Update version numbers in software guide and cookbook -
Update release notes-
Walk the mercurial history and log all improvements -
Generate mantis report-
Use Advanced Filters -
Select all projects in the combobox : Orfeo Toolbox (OTB) -
Set "Use Date" and "Resolution" filters -
Export in cvs format -
Use processBugReport.py from OTB-DevUtils/Scripts -
Copy/paste the result in the release notes
-
-
-
Update list of contributors if necessary - Prepare announcement email
- Prepare announcement on the blog
It would be nice to be able to include the list of commit with contributors between the 2 last releases as ITK. A first try of command to do this:
hg log --template "{author|person} : {desc|firstline}\n" -r 3.16.0:tip | sort
For the release 3.18 it gives more than 500 commits so I did not include the list in the announcement
J-1
-
Last minute fixes, but avoid if possible -
Before nightly deadline, tag for RC-
tag OTB hg tag 3.18-rc1 MANU -
tag Monteverdi MANU -
tag OTB-Wrapping MANU
-
-
Make TGZ source packages MANU -
Make ZIP source packages MANU -
Ensure you named the zipped files with the same convention as the previous release (OTB -> OTB ; Monteverdi -> Monteverdi) -
Test the source packages MANU -
Upload the packages on www.orfeo-toolbox.org/packages MANU
J
-
Last dashboard check to confirm the release candidate - On failure :
- Remove the source packages from the http server
- Backout tags
- Go back J-1
- Copy from www.orfeo-toolbox.org/packages/nightly/latest to www.orfeo-toolbox.org/packages :
-
Monteverdi Windows installer -
Monteverdi Mac installer -
SoftwareGuide PDF and update simlink in packages (ln -fs {/path/to/file-name} {link-name}) -
Copy the SoftwareGuide HTML version to www and update simlink (ln -fs {/path/to/file-name} {link-name}) -
Cookbook PDF and update simlink in packages (ln -fs {/path/to/file-name} {link-name}) -
Copy the Cookbook HTML version to www and update simlink (ln -fs {/path/to/file-name} {link-name})
-
- Handle FAQ :
- www/FAQ/index.html points to www/FAQ.html : don't touch it.
- update symlink www/FAQ.html to www/SoftwareGuide-$VERSION/SoftwareGuidech32.html
- Generate Applications HTML version (generated by the Python script generateAppliDoc.py)
python generateAppliDoc.py OTB_BIN_DIR APP_DOC_OUTPUT_DIR
-
Upload the Applications HTML version and update simlink - Send RC announcement email (and blog post if there is one)
Final release preparation
J-2
-
Find a release code name - Prepare annoucement email MANUEL
- Prepare annoucement on the blog MANUEL
- Launch doxygen generation (will finish on J)
-
Update documentation about installation (version number, packages name, list of supported platform) if necessary - Launch javadoc generation
J-1
-
No last minutes fix allowed -
Test the nightly generated binary packages -
Update date in RELEASE_NOTES.txt -
Before nightly deadline, tag for finale release- tag OTB
- tag Monteverdi
- tag OTB-Applications
- tag OTB-Wrapping
- tag OTB-Data
- tag OTB-Documents
- tag OTB-DevUtils
- Notes :
- tsocks ssh -t julienmalik,orfeo-toolbox@shell.sourceforge.net create
- then you can ssh/scp/etc to this shell
- type sf-help to know where the files dir are located
- Upload the source packages on sourceforge (OTB, monteverdi, OTB-Applications, OTB-Wrapping)
- Upload Software pdf Guide on sourceforge
- Upload Cookbook pdf on sourceforge
- Upload FAQ pdf on sourceforge
J
-
Test the generated binary packages in http://www.orfeo-toolbox.org/packages/nightly -
Upload binary packages- Monteverdi-windows
- Monteverdi-MacOS
- Upload Software pdf Guide on orfeo-toolbox
- Upload Cookbook pdf on orfeo-toolbox
- Upload FAQ pdf on orfeo-toolbox
- Upload Software pdf Guide on sourceforge
- Upload Cookbook pdf on sourceforge
- Upload FAQ pdf on sourceforge
-
Update OSGeo4W packages - Generate Ubuntu source packages and upload to launchpad
-
generate otb package
-
make_ubuntu_packages.sh -d ~/Dashboard/src/OTB -r 3.18.0 -o 3.18.0 -p 1 -c "New upstream release"
-
upload to orfeotoolbox-staging-stable-ubuntugis
-
dput ppa-otb-staging-stable-ubuntugis /tmp/otb_3.18.0-0ppa~*.changes
-
wait for otb package availability - generate package and upload for monteverdi and otb-wrapping
- wait for package availability
- install them all on a test environment and check they can all be installed
-
- Generate rpm packages
-
Update doxygen on orfeo-toolbox - Update javadoc on orfeo-toolbox
-
Update Software Guide online on orfeo-toolbox - Update Cookbook online on orfeo-toolbox
- Update FAQ html on orfeo-toolbox
-
Generate Applications HTML version (generated by the Python script generateAppliDoc.py)
python generateAppliDoc.py OTB_BIN_DIR APP_DOC_OUTPUT_DIR
- Upload the Applications HTML version and update simlink
-
Update OTB-Data-Examples.tgz on orfeo-toolbox (packages) -
Send email to mailing list to announce the release - Release announcement on the blog
J+1
- Update version number to a development version (even minor number)
- Stop nightly submission to launchpad to avoid flooding the server
J+N
-
Update osgeo-live GIS installation script and documentation with new OTB versions