The release process consists of several steps.
Before starting the release process the develop
branch must be
ready for release, all unit tests, checkstyle, findbugs, pmd, etc. pass
TravisCI.
Create a release branch from the develop
branch. Release branches support preparation of a
new production release. They allow for last-minute dotting of i's and crossing t's. Furthermore,
they allow for minor bug fixes and preparing meta-data for a release (version number, build dates,
etc.). By doing all of this work on a release branch, the develop branch is cleared to receive
features for the next big release.
$ git checkout -b release-3.0.1 develop
Update the version number in the pom.xml
file, minor bug fixes, meta-data, etc. Ensure that the release branch
passes all unit tests, checkstyle, findbugs, pmd, etc. Don't forget to update the Procfile
file to point to the
new wattdepot-version number.jar file.
Commit all the changes to the release branch.
$ git commit -a -m "Bumped version to 3.0.1."
Switch to the master
branch.
$ git checkout master
Merge the release branch into master
.
$ git merge --no-ff release-3.0.1
Ensure that the master
branch passes all unit tests, checkstyle, findbugs, pmd, etc.
$ mvn package site
(Optional) Delete the old release branch.
$ git branch -d release-3.0.1
Push the changes to Github.
$ git push origin master
Check that continuous integration passes TravisCI.
site
directory to GitHub.Move the target/site
to a safe place (e.g. Your home directory).
Checkout the gh-pages
branch.
Replace the old site
directory with the updated target/site
directory you saved.
Add all the changes to the gh-branch
.
$ git commit -a -m "Javadoc for 3.0.1"
Push the changes to the gh-pages
branch.
$ git push origin gh-pages.
Switch back the master
branch.
$ git checkout master
$ mvn package -P rel
This will create WattDepot-<version>.tar.bz2, WattDepot-<version>.tar.gz and WattDepot-<version>.zip files in the target
directory.
Go to the WattDepot GitHub page.
Click on the release(s)
link in the toolbar.
On the Releases page click the Draft a new release
button.
Fill out the Tag version input field with the version of the release (e.g. 3.0.1) on branch
master
.
Fill in the Release title (e.g. 'Release 3.0.1').
Fill in the description of the release.
Drag the WattDepot-<version>.tar.bz2, WattDepot-<version>.tar.gz and WattDepot-<version>.zip files to the "Attach binaries for this release by dropping them here." box.
Click the "This is a pre-release" checkbox if it is.
Click the "Publish release" button.