How to Release 4.0
From OTBWiki
Contents
Release Candidate preparation
J-2
-
Update version numbers in CMakeLists.txt for OTB and Monteverdi1 -
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
- Select all projects in the combobox : Orfeo Toolbox (OTB)
- Use Advanced Filters
- 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 MG Draft available on the blog for OTBv4
J-1
-
Last minute fixes, but avoid if possible -
Before nightly deadline, tag for RC-
tag OTB hg tag 4.0-rc1 -
tag Monteverdi
-
-
Make TGZ source packages -
Make ZIP source packages -
Ensure you named the zipped files with the same convention as the previous release (OTB -> OTB ; Monteverdi -> Monteverdi) -
Test the source packages -
Upload the packages on www.orfeo-toolbox.org/packages
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 (no release code name : it is 4.0) -
Prepare annoucement email - Prepare annoucement on the blog
- Launch doxygen generation (will finish on J)
-
Update documentation about installation (version number, packages name, list of supported platform) if necessary
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
- Prepare TGZ & ZIP source packages (use OTB-DevUtils/Scripts/prepareSourcePackages.sh)
- Ensure you named the zipped files with the same convention as the previous release
- Upload to OTB server
-
Upload the source packages (OTB, Monteverdi, Monteverdi2 if needed) - Upload Software pdf and html.tar.gz Guide on orfeo-toolbox
- Upload Cookbook pdf and html.tar.gz on orfeo-toolbox
- Upload FAQ pdf and html.tar.gz on orfeo-toolbox
-
- Upload to Sourceforge (see http://sourceforge.net/apps/trac/sourceforge/wiki/SSH%20Client) :
- Notes :
- tsocks ssh -t yoursourceforgeuser,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 (OTB, Monteverdi, Monteverdi2, OTB-Applications, OTB-Wrapping) -
Upload Software pdf and html.tar.gz Guide on sourceforge - Upload Cookbook pdf and html.tar.gz on sourceforge
- Upload FAQ pdf and html.tar.gz on sourceforge
- Clean up sourceforge project dir
- Notes :
- Update status on freecode.com
-
Do some cleanup in the packages dir on orfeo-toolbox if relevant (keep new release, put release candidate packages in 'archives')
J
-
Test the generated binary packages in http://www.orfeo-toolbox.org/packages/nightly - Upload binary packages to OTB server (move from packages/nightly/latest to packages)
- Monteverdi-windows-32bit
- Monteverdi-windows-64bit
- Monteverdi-MacOS
- Monteverdi2-windows-32bit (not for OTB 4.0 release)
- Monteverdi2-windows-64bit (not for OTB 4.0 release)
- Monteverdi2-MacOS (not for OTB 4.0 release)
- Upload binary packages to sourceforge
- Monteverdi-windows-32bit
- Monteverdi-windows-64bit
- Monteverdi-MacOS
- Monteverdi2-windows-32bit (not for OTB 4.0 release)
- Monteverdi2-windows-64bit (not for OTB 4.0 release)
- Monteverdi2-MacOS (not for OTB 4.0 release)
-
Update platform-specific links in sourceforge Files page -
Update OSGeo4W packages - Generate Ubuntu source packages and upload to launchpad
- generate otb package
make_ubuntu_packages.sh -d ~/Dashboard/src/OTB -r 4.0 -o 4.0 -p 1 -c "New upstream release" -g 0x$GPGKEY
- upload to orfeotoolbox-staging-stable-ubuntugis
dput ppa-otb-staging-stable-ubuntugis /tmp/otb_4.0.0-0ppa~*.changes
- wait for otb package availability
- generate package and upload for monteverdi monteverdi2 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
export DOCVERSION=4.0 cd /var/www/main cp -r /home/otbbot/doxygen/OTB-Documents/Doxygen/doxygen-current doxygen-$DOCVERSION ln -nsf doxygen-$DOCVERSION doxygen
-
Update Software Guide online on orfeo-toolbox
export DOCVERSION=4.0 cp -R /var/www/main/packages/nightly/latest/SoftwareGuide /var/www/main/SoftwareGuide-$DOCVERSION cd /var/www/main/SoftwareGuide-$DOCVERSION rm index.html FAQ.html ln -nsf SoftwareGuide.html index.html ln -nsf `grep -rl "<head><title>[0-9]* Frequently Asked Questions</title>" .` FAQ.html cd /var/www/main ln -nsf SoftwareGuide-$DOCVERSION SoftwareGuide
- Update Cookbook online on orfeo-toolbox
export DOCVERSION=4.0 cp -R /var/www/main/packages/nightly/latest/CookBook /var/www/main/CookBook-$DOCVERSION cd /var/www/main/CookBook-$DOCVERSION rm index.html ln -nsf CookBook.html index.html cd /var/www/main ln -nsf CookBook-$DOCVERSION CookBook
- Update FAQ html on orfeo-toolbox : Nothing to be done, we point to SG internal version
- 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 symlink
- 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
- Update general template version of "How to release" with the last release version