Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Tweak instructions so that sftp upload works

...

  • mkdir 0.10.0.0_RELEASE

  • cd 0.10.0.0_RELEASE/

  • mkdir artifactsmkdir kafka-0.10.0.0-rc0
  • git clone https://git-wip-us.apache.org/repos/asf/kafka.git kafka

  • cd kafka

  • git checkout -b 0.10.0 tags/0.10.0.0-rc0   <- important! checkout the tag, or you'll be releasing SNAPSHOT accidentally.

...

  • Go to JIRA, move all unresolved jiras with "Fix versions" of 0.10.0.0 to future releases.
  • Run ./release_notes.py 0.10.0.0 > ../artifactskafka-0.10.0.0-rc0/RELEASE_NOTES.html. It will fail if you have any unresolved JIRAs still in the release, listing the JIRAs that still need to be addressed. Otherwise, double check that the output in RELEASE_NOTES.html looks ok for the release

...

  • git archive --format tar.gz --prefix kafka-0.10.0.0-src/ -o ../artifactskafka-0.10.0.0-rc0/kafka-0.10.0.0-src.tgz 0.10.0.0-rc0

Prepare the binary artifacts and aggregated javadoc

  • Make sure your java is on jdk 1.7 (On mac: export JAVA_HOME=$(/usr/libexec/java_home -v 1.7))
  • Make sure you have Gradle installed
  • gradle
  • ./gradlew clean releaseTarGzAll aggregatedJavadoc
  • cp core/build/distributions/* ../artifactskafka-0.10.0.0-rc0
  • cp -R build/docs/javadoc ../artifactskafka-0.10.0.0-rc0

Sign the artifacts

  • Make sure you have gpg keys to sign the release artifacts
  • Sign the artifacts:
    • cd ../artifactskafka-0.10.0.0-rc0
    • Run the following commands (you may have to specify the gpg key to use via the `-u` option if you have multiple keys):
      • for file in *.tgz; do gpg --armor --output $file.asc --detach-sig $file; done
        for file in *.tgz; do gpg --verify $file.asc $file; done
        for file in *.tgz; do gpg --print-md md5 $file > $file.md5; done
        for file in *.tgz; do gpg --print-md sha1 $file > $file.sha1; done
        for file in *.tgz; do gpg --print-md sha512 $file > $file.sha2; done

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

  • The easiest way is to sftp (lftp is a more fully featured alternative) them over to homesftp can be used to copy the relevant files over to <apache_id>@home.apache.org/public_html using your apache id:
    • sftp <apache_id>@home.apache.org
    • mkdir public_html (this only needs to be done the first time)
    • cd public_html
    • mkdir kafka-0.10.0.0-rc0
    • put -r  artifacts/* kafka-0.10.0.0-rc0rc0 .
  • If you find sftp is a bit clunky, lftp is an alternative

Upload artifacts to Maven staging repository

...

  • Send out a voting email to users@kafka.apache.orgdev@kafka.apache.orgkafka-clients@googlegroups.com. In the email, include the git revision next to the git tag (since tag will be dropped when rolling out a new RC).

    No Format
    To: dev@kafka.apache.org
    Subject: [VOTE] 0.10.0.0 RC0
     
    Hello Kafka users, developers and client-developers,
    
    This is the first candidate for release of Apache Kafka 0.10.0.0. This is a major release that includes: (1) New message format including timestamps (2) client interceptor API (3) Kafka Streams. Since this is a major release, we will give people more time to try it out and give feedback.
    
    Release notes for the 0.10.0.0 release:
    http://home.apache.org/~gwenshap/kafka-0.10.0.0-rc0/RELEASE_NOTES.HTML
    
    *** Please download, test and vote by Monday, March 28, 9am PT
    
    Kafka's KEYS file containing PGP keys we use to sign the release:
    http://kafka.apache.org/KEYS
    
    * Release artifacts to be voted upon (source and binary):
    http://home.apache.org/~gwenshap/kafka-0.10.0.0-rc0/
    
    * Maven artifacts to be voted upon:
    https://repository.apache.org/content/groups/staging/
    
    * scalajava-doc
    http://home.apache.org/~gwenshap/0.10.0.0-rc0/scaladoc
    
    * java-doc
    http://home.apache.org/~gwenshap/kafka-0.10.0.0-rc0/javadoc/
    
    * tag to be voted upon (off 0.10.0 branch) is the 0.10.0.0 tag:
    https://git-wip-us.apache.org/repos/asf?p=kafka.git;a=tag;h=72fd542633a95a8bd5bdc9fdca56042b643cb4b0
    
    * Documentation:
    http://kafka.apache.org/0100/documentation.html
    
    * Protocol:
    http://kafka.apache.org/0100/protocol.html
    
    /**************************************
    
    Thanks,
    
    Gwen


...