Versions Compared

Key

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

...

Ensure JIRA Issues are Appropriately Tagged for the Release 

...

...

  1. Branch your release:

    git checkout -b <your release name> <commit sha1> 

    push to origin:
    git push origin <your release name>


  2. Apply signed tag on release branch

    Example:

     git tag -u <GPG KEY ID> --sign <your release name>-rc# -m "Apache MADlib (Incubating) <your release name> RC#" <SHA of HEAD of branch>
     

  3. Make a tarball and gzip:
    git archive -o ../apache-madlib-<your release name>-incubating-src.tar --prefix=apache-madlib-<your release name>-incubating-src/ <your tag/branch name>
    gzip ../apache-madlib-<your release name>-incubating-src.tar

    Example:

    $ git archive -o ../apache-madlib-1.11-incubating-src.tar --prefix=apache-madlib-1.11-incubating-src/ 1.11-incubating
    $ gzip ../apache-madlib-1.11-incubating-src.tar

Create convenience binaries (rpm and dmg files)

...

cp greenplum-db-5.0.0-beta.6-rhel6-x86_64.rpm /opt/downloads
cp apache-madlib-1.11-incubating-src.tar.gz /opt/downloads

...

Example:

$ md5 apache-madlib-1.11-incubating-src.tar.gz > apache-madlib-1.11-incubating-src.tar.gz.md5
$ shasum -a 512 apache-madlib-1.11-incubating-src.tar.gz > apache-madlib-1.11-incubating-src.tar.gz.sha512
$ gpg --detach-sign -a apache-madlib-1.11-incubating-src.tar.gz

You need a passphrase to unlock the secret key for
user: "Rashmi Raghu (CODE SIGNING KEY) <rashmiraghu@apache.org>"
4096-bit RSA key, ID 28D2C789, created 2017-05-01 

$ ls -la

 

-rw-r--r--@ 1 rraghu staff 9961787 May 1 13:55 apache-madlib-1.11-incubating-bin-Darwin.dmg
-rw-r--r-- 1 rraghu staff 819 May 1 14:29 apache-madlib-1.11-incubating-bin-Darwin.dmg.asc
-rw-r--r-- 1 rraghu staff 86 May 1 14:27 apache-madlib-1.11-incubating-bin-Darwin.dmg.md5
-rw-r--r-- 1 rraghu staff 175 May 1 14:28 apache-madlib-1.11-incubating-bin-Darwin.dmg.sha512
-rw-r--r--@ 1 rraghu staff 3868116 May 1 13:55 apache-madlib-1.11-incubating-bin-Linux-GPDB5alpha1.rpm
-rw-r--r-- 1 rraghu staff 819 May 1 14:48 apache-madlib-1.11-incubating-bin-Linux-GPDB5alpha1.rpm.asc
-rw-r--r-- 1 rraghu staff 97 May 1 14:46 apache-madlib-1.11-incubating-bin-Linux-GPDB5alpha1.rpm.md5
-rw-r--r-- 1 rraghu staff 186 May 1 14:47 apache-madlib-1.11-incubating-bin-Linux-GPDB5alpha1.rpm.sha512
-rw-r--r--@ 1 rraghu staff 18527053 May 1 13:55 apache-madlib-1.11-incubating-bin-Linux.rpm
-rw-r--r-- 1 rraghu staff 819 May 1 14:43 apache-madlib-1.11-incubating-bin-Linux.rpm.asc
-rw-r--r-- 1 rraghu staff 85 May 1 14:41 apache-madlib-1.11-incubating-bin-Linux.rpm.md5
-rw-r--r-- 1 rraghu staff 174 May 1 14:41 apache-madlib-1.11-incubating-bin-Linux.rpm.sha512
-rw-r--r--@ 1 rraghu staff 2474217 May 1 13:56 apache-madlib-1.11-incubating-src.tar.gz
-rw-r--r-- 1 rraghu staff 819 May 1 14:45 apache-madlib-1.11-incubating-src.tar.gz.asc
-rw-r--r-- 1 rraghu staff 82 May 1 14:44 apache-madlib-1.11-incubating-src.tar.gz.md5
-rw-r--r-- 1 rraghu staff 171 May 1 14:45 apache-madlib-1.11-incubating-src.tar.gz.sha512

Validate the Release Candidate 

As per the Apache documentation, verify that the release candidate artifacts satisfy the following:

...

$ gpg --verify apache-madlib-1.11-incubating-bin-Linux.rpm.asc
gpg: assuming signed data in `apache-madlib-1.11-incubating-bin-Linux.rpm'
gpg: Signature made Mon May 1 14:42:16 2017 PDT using RSA key ID 28D2C789
gpg: Good signature from "Rashmi Raghu (CODE SIGNING KEY) <rashmiraghu@apache.org>"
$ gsha512sum --check apache-madlib-1.11-incubating-bin-Linux.rpm.sha512
apache-madlib-1.11-incubating-bin-Linux.rpm: OK
$ gmd5sum --check apache-madlib-1.11-incubating-bin-Linux.rpm.md5
apache-madlib-1.11-incubating-bin-Linux.rpm: OK

 

Check Jenkins build here to make sure it does not show any errors: https://builds.apache.org/job/madlib-master-build/ 

  • DISCLAIMER is correct, filenames include “incubating”

...

The Apache dist dev site for MADlib (incubating) is located at: https://dist.apache.org/repos/dist/dev/incubator/madlib/

Uploading to this site is via Subversion.

  1. Retrieve the subversion dev incubator madlib dev madlib repo
    Example: svn checkout https://dist.apache.org/repos/dist/dev/incubator/madlib/ --username=<your apache user id>
  2. Create a local folder for the release (e.g. 1.11-incubating.RC1) in svn. We use apache's distribution repo: https://dist.apache.org/repos/dist/dev/incubator/madlib/
  3. Move the files into the release folder on local disk
  4. svn add <release folder>
  5. Commit artifacts:
    Example: svn commit -m 'adding 1.11 -incubating RC1 candidate release artifacts' --username=<your apache user id>

...

  1. Move the source, binaries and corresponding signature files from staging (dev) folder to the release dist site: https://dist.apache.org/repos/dist/release/incubator/madlib/ . Use the svn mv command. Example below:
    svn mv https://dist.apache.org/repos/dist/dev/incubator/madlib/1.11-incubating-rc3/ https://dist.apache.org/repos/dist/release/incubator/madlib/1.11-incubating/

  2. Remove old releases from the release and dev dist sites

    1. Retrieve the subversion release incubator madlib repo if you have not done so already
      Example: svn checkout https://dist.apache.org/repos/dist/release/incubatordev/madlib/ --username=<your apache user id>

    2. Delete the folders from local working copy using svn delete <folder to delete>
      E.g. svn delete 1.10.011-incubatingrc3/
    3. Commit the deletions: svn commit -m 'removing old releaseRemoving 1.11 RC releases' --username=<your apache user id>Remember to do the above steps for the "dev" site as well
  3. Update the user docs link to point to the correct version of the docs and also update any version numbers / links in the page content: http://madlib.incubator.apache.org/docs/latest/ 
  4. Announce the release on user@ and dev@ mailing lists. See example email of past announcement.

...

...