Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
$ cd tools
tools $ tools $ OLD_VERSION=$CURRENT_SNAPSHOT_VERSION NEW_VERSION=$RELEASE_VERSION RELEASE_CANDIDATE=$RC_NUM releasing/create_release_branch.sh

Use Maven release plugin to build the release artifacts, as follows:

Code Block
languagebash
mvn release:prepare \
    -Dresume=false \
    -DreleaseVersion=${VERSION} \
    -Dtag=${TAG} \
    -DupdateWorkingCopyVersions=false

We now need to do several things:

  • Create the source release archive
  • Deploy jar artefacts to the Apache Nexus Repository, which is the staging are for deploying the jars to Maven Central
  • Create binary convenience releases for different Hadoop versions

You might want to create a directory on your local machine for collecting the various source and binary releases before uploading them to a staging area. Creating the binary releases is a lengthy process but you can do that on a another machine (for example, in the "cloud"). When doing this, you can skip signing the release files on the remote machine, download them to your local machine and sign them there.

First, we build the source release:

Code Block
languagebash
tools $ RELEASE_VERSION=$RELEASE_VERSION releasing/create_source_release.sh
 

Next, we stage the maven artefactsUse Maven release plugin to stage these artifacts on the Apache Nexus repository, as follows:

Code Block
languagebash
mvn release:performtools $ releasing/deploy_staging_jars.sh

Review all staged artifacts. 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.

...