THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
git checkout ${RELEASE_BRANCH}
- Run mvn version to set the proper rc number in all artifacts
mvn versions:set -DnewVersion=${RELEASE_VERSION}-rc${RC_NUM}
- Run Unit tests and ensure they succeed
mvn test -DskipITs=true
- Run Integration Tests and ensure they succeed
mvn verify -DskipUTs=true
- Commit and push this change to RELEASE branch
git commit -am “Bumping"Bumping release candidate number ${RC_NUM}”"
git push origin ${RELEASE_BRANCH}
- Generate Source Release: This will create the tarball under hudi/src_release directory
git checkout ${RELEASE_BRANCH}
cd scripts && ./release/create_source_release.sh
- Verify Source release is signed and buildable
- cd hudi/src_release
- gpg --verify hudi-${RELEASE_VERSION}-rc${RC_NUM}.src.tgz.asc hudi-${RELEASE_VERSION}-rc${RC_NUM}.src.tgz
- tar -zxvf hudi-${RELEASE_VERSION}-rc${RC_NUM}.src.tgz && cd hudi-${RELEASE_VERSION}-rc${RC_NUM} && mvn clean package -DskipTests
- If they pass, delete the repository we got from the tar-ball
- cd ../ && rm -rf hudi-${RELEASE_VERSION}-rc${RC_NUM}
- Create tag
git tag -s release-${RELEASE_VERSION}-rc${RC_NUM} "${RELEASE_VERSION}"
- if apache repo is origin.
git push origin release-${RELEASE_VERSION}-rc${RC_NUM}
- Deploy maven artifacts and verify
- This will deploy jar artifacts to the Apache Nexus Repository, which is the staging area for deploying jars to Maven Central.
- Review all staged artifacts (https://repository.apache.org/). They should contain all relevant parts for each module, including pom.xml, jar, test jar, source, test source, javadoc, etc. Carefully review any new artifacts.
git checkout ${RELEASE_BRANCH}
- This will deploy 2.11 artifacts to repository.apache.org
cd scripts && ./release/deploy_staging_jars.sh --scala_version=2.11
- This will deploy 2.12 artifacts to repository.apache.org.
./release/deploy_staging_jars.sh --scala_version=2.12
- Review all staged artifacts to ensure it contains both 2.11 and 2.12 artifacts, mainly hudi-spark-bundle-2.11/2.12, hudi-spark-2.11/2.12, hudi-utilities-bundle_2.11/2.12 and hudi-utilities_2.11/2.12.
- Close the staging repository on Apache Nexus. When prompted for a description, enter “Apache Hudi, version ${RELEASE_VERSION}, release candidate ${RC_NUM}”.
- Stage source releases on dist.apache.org
- If you have not already, check out the Hudi section of the dev repository on dist.apache.org via Subversion. In a fresh directory
- if you would not checkout, please try svn checkout https://dist.apache.org/repos/dist/dev/hudi again.
svn checkout https://dist.apache.org/repos/dist/dev/hudi --depth=immediates
- Make a directory for the new release:
mkdir hudi/hudi-${RELEASE_VERSION}-rc${RC_NUM}
- Copy Hudi source distributions, hashes, and GPG signature:
mv <hudi-dir>/src_release/* hudi/hudi-${RELEASE_VERSION}-rc${RC_NUM}
- Add and commit all the files.
cd hudi
svn add hudi-${RELEASE_VERSION}-rc${RC_NUM}
svn commit
- Verify that files are present
- Run Verification Script to ensure the source release is sane
cd scripts && ./release/validate_staged_release.sh --release=${RELEASE_VERSION} --rc_num=${RC_NUM} --verbose
...