THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block |
---|
git checkout $WORK_BRANCH git clean -xdf # perform quality checks mvn clean apache-rat:check -DskipTests -Pfull-build -Papache-release mvn clean install checkstyle:check spotbugs:check -DskipTests -Pfull-build -Papache-release |
Perform a release on branch (for major and minor release) (remove SNAPSHOT and create tag)
Code Block |
---|
git checkout $WORK_BRANCH git clean -xdf mvn release:prepare \ -DautoVersionSubmodules=true \ -DreleaseVersion=$RELEASE_VERSION \ -Dtag=$TAG \ -DdevelopmentVersion=$RELEASE_DEVELOPMENT_VERSION \ -Darguments='-DskipTests=true -Pfull-build,apache-release' \ -Pfull-build,apache-release |
...
- removes -SNAPSHOT in all of the pom.xml files (the version is RELEASE_VERSION)
- build the project (even the C client and contrib packages)
- ensures the correct version in C client files (configure.ac, CMakelink.txt, TODO zookeeper_version.h)
- created a signed tag
- bump the branch to the next minor version (RELEASE_DEVELOPMENT_VERSION)
Preparing the release candidate
...
(prepare stage artifacts for VOTE)
Using the same directory in which you run "release:prepare" perform these are steps
Maven Release Plugin uses release.properties files prepared by release:prepare
- It checks out a new copy inside zookeeper/target/checkout
Build the projects with maven (we are skipping runit the unit tests here, but you should run them at least once on the release branch before continuing)
Ensure that you are using JDK8 and Maven 3.6+There is no need to build the C client or "contrib" packages
Code Block mvn release:perform -Darguments='-DskipTests=true -Pfull-build,apache-release' -Papache-release,full-build
- You should have the SIGNED jar files and also the tarballs built. The two tarball is available at:
- zookeeper-assembly/target/apache-zookeeper-X.Y.Z-bin.tar.gz
- zookeeper-assembly/target/apache-zookeeper-X.Y.Z.tar.gz
- This command also staged all of the maven artifacts to repository.apache.org
...