...
Making a release candidate
Check out the branch you are making the release of:
Code Block git clone -b branch-X.Y https://gitbox.apache.org/repos/asf/zookeeper.git
If you are creating a point release (almost always the case) then follow this step. The exception to this is typically only when creating a new release candidate because the previous candidate failed during voting (rc0 failed and you are creating rc1+) – in which case skip this step.
Create a branch for X.Y.Z (the current release candidate)
Code Block git branch branch-X.Y.Z git push <remote> branch-X.Y.Z
Remove the "-SNAPSHOT" from the version in all pom.xml.
For example, to do the first release candidate on 3.5.5, run:Code Block language xml title .m2 settings mvn clean org.codehaus.mojo:versions-maven-plugin:2.7:set -DnewVersion=3.5.5
Note: we do not add "-RC0" at the and, because if votes passes on the Release Candidate, this will be the release we deploy to maven central.
Also update the version number in src/c/configure.ac, src/c/CMakeLists.txt, and src/c/include/zookeeper_version.h to the next logical SNAPSHOT version (e.g. X.Y.Z to X.Y.(Z+1)-SNAPSHOT)- Do a search in the project for the version with the attached -SNAPSHOT to make sure it is changed everywhere. Some files (other than pom.xml) might also contain a hard coded version.
Clean your working directory:
Code Block language xml mvn clean git clean -fxd
- ToDO: rat here?
Tag the release candidate (R is the release candidate number, and starts from 0):
Code Block # create a signed tag git tag -s release-X.Y.Z-rcR -m "ZooKeeper X.Y.Z-rcR release." # push the newly created rc tag to the remote repo. git push <remote> release-X.Y.Z-rcR
- Make sure all the pom changed to the new version. For example, you could do a search in the project for previous versions. Some files (other than pom.xml) might also contain a hard coded version.
Clean your working directory:
Code Block language xml title .m2 settings mvn clean git clean -fxd
To publish a release candidate, remove the "-SNAPSHOT" and add "-RC{X}" to all pom.xml.
For example, to do the first release candidate on 3.5.5, first run:
Code Block | ||||
---|---|---|---|---|
| ||||
mvn clean org.codehaus.mojo:versions-maven-plugin:2.7:set -DnewVersion=3.5.5-RC0 |
Publishing
Once three PMC members have voted for a release, it may be published.
...