Versions Compared

Key

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

...

  1. If you have not already done so, append your code signing key to the KEYS file. Once you commit your changes, they will automatically be propagated to the website. Also upload your key to a public key server if you haven't. End users use the KEYS file (along with the web of trust) to validate that releases were done by an Apache committer. For more details on signing releases, see Signing Releases and Step-By-Step Guide to Mirroring Releases.
  2. Make sure to update the various LICENSE and NOTICE files per Apache policy.
  3. Bulk update JIRA to unassign from this release all issues that are open non-blockers. 
  4. Send follow-up notification to the developer list that this was done.
  5. To deploy artifacts to the Apache Maven repository create ~/.m2/settings.xml: 
Code Block
languagexml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"

...

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

...

xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0

...

http://maven.apache.org/xsd/settings-1.0.0.xsd">
 

...

<servers>
  

...

 <server>
    

...

<id>apache.staging.https</id>
  

...

  <username>Apache username</username>
  

...

  <password>Apache password</password>
  

...

 </server>

...

 </servers>
</settings>

Branching

When releasing Hadoop X.Y.Z, the following branching changes are required. Note that a release can match more than one of the following if-conditions. For a major release, one needs to make the changes for minor and point releases as well. Similarly, a new minor release is also a new point release.

  1. If this is a new major release (i.e., Y = 0 and Z = 0)
    1. Create a new branch (branch-X) for all releases in this major release.
    2. Update the version on trunk to (X+1).0.0-SNAPSHOT

      mvn versions:set -DnewVersion=(X+1).0.0-SNAPSHOT
      
    3. Commit the version change to trunk.

      git commit -a -m "Preparing for (X+1).0.0 development"
      
  2. If this is a new minor release (i.e., Z = 0)
    1. Create a new branch (branch-X.Y) for all releases in this minor release.
    2. Update the version on branch-X to X.(Y+1).0-SNAPSHOT

      mvn versions:set -DnewVersion=X.(Y+1).0-SNAPSHOT
      
    3. Commit the version change to branch-X.

      git commit -a -m "Preparing for X.(Y+1).0 development"
      
  3. If this is a new point release (i.e., always)
    1. Create a new branch (branch-X.Y.Z) for this release.
    2. Update the version on branch-X.Y to X.Y.(Z+1)-SNAPSHOT

      mvn versions:set -DnewVersion=X.Y.(Z+1)-SNAPSHOT
      
    3. Commit the version change to branch-X.Y.

      git commit -a -m "Preparing for X.Y.(Z+1) development"
      
  4. Release branch (branch-X.Y.Z) updates:
    1. Update

       hadoop-project/src/site/markdown/index.md.vm to reflect

      the

      right versions, new features and big improvements.

      Update the version on branch-X.Y.Z TO X.Y.Z

      mvn versions:set -DnewVersion=X.Y.Z
      

Note: Please also also update the hadoop.version property in the root pom.xml and hadoop.assemblies.version in hadoop-project/pom.xml (see HADOOP-15369)

...

    1.  -DnewVersion=X.Y.Z
      

Now, for any branches in {trunk, branch-X, branch-X.Y, branch-X.Y.Z} that have changed, push them to the remote repo taking care of any conflicts.

...