This document describes how to release Apache Kafka from trunk. 

It is a work in progress and should be refined by the Release Manager (RM) as they come across aspects of the release process not yet documented here.

NOTE: For the purpose of illustration, this document assumes that the version being released is 0.10.0.0 and the following development version will become 0.10.1.0.


Prerequisites

Cut Branches

Create Release Artifacts

Create a release tag - because our release branch is still 0.10.0.0-SNAPSHOT but our release artifact needs to be 0.10.0.0, we'll make the change in a tag:

Prepare a workspace:

Check NOTICE and LICENSE files

Prepare release notes

Prepare the source artifact

Prepare the binary artifacts and aggregated javadoc

Sign the artifacts

Upload all the binary artifacts, release notes, javadoc to your home.apache.org URL.

Upload artifacts to Maven staging repository

              mavenUrl=https://repository.apache.org/service/local/staging/deploy/maven2
              mavenUsername=your-apache-id
              mavenPassword=your-apache-passwd
              signing.keyId=your-gpgkeyId
              signing.password=your-gpg-passphrase
              signing.secretKeyRingFile=/Users/your-id/.gnupg/secring.gpg

 Website update process:

  For new releases:

Voting:

Verification for voting:

If need to roll a new RC

 After the vote passes: