...
Ensure that all MADlib JIRA issues that are addressed in this release are marked with the release version in the ‘FixVersion’ field of the issue.
...
Creating and Validating the Release Candidate
...
Created signed annotated git tag on release branch
git tag -u <GPG KEY ID> --sign <your release name>-rc# -m "Apache MADlib <your release name> RC#" <SHA of HEAD of branch>
Example:$ git tag -u 57325522 --sign rc/1.12-rc1 -m "Apache MADlib 1.12 RC1" 46795de0254d2cb7755ee9336be5fef2a187e8c9
- Make a tarball and gzip:
git archive -o ../apache-madlib-<your release name>-src.tar --prefix=apache-madlib-<your release name>-src/ <your tag/branch name>
gzip ../apache-madlib-<your release name>-src.tarExample:
$ git archive -o ../apache-madlib-1.12-src.tar --prefix=apache-madlib-1.12-src/ rc/1.12-rc1
$ gzip ../apache-madlib-1.12-src.tar
...
/usr/local/Cellar/gnupg/1.4.19: 53 files, 5.4M, built in 87 seconds
office-4-125:release_manager_stuff rraghu$ which gpg
/usr/local/bin/gpg
Prepare MD5, SHA256 and ASC files from the source tarball and binaries:
...
$ gpg --verify apache-madlib-1.11-bin-Linux.rpm.asc
gpg: assuming signed data in `apache-madlib-1.11-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-bin-Linux.rpm.sha512
apache-madlib-1.11-bin-Linux.rpm: OK
$ gmd5sum --check apache-madlib-1.11-bin-Linux.rpm.md5
apache-madlib-1.11-bin-Linux.rpm: OK
...
- Build is successful (Refer to Build and Install for build instructions)
Check Jenkins build here to make sure it does not show any errors: https://ci-builds.apache.org//job/Madlib/job/madlib-master-build/
- LICENSE and NOTICE files are correct and dependency licenses are acceptable
- LICENSE and NOTICE files at the root of the artifact directory must only reflect the contents of the artifact in which they are contained.
- See:
- LICENSE file requirements
- LICENSE requirements for distribution artifacts with multiple licenses
- NOTICE file requirements (Check Copyright year)
- Apache Legal
- Acceptable and Unacceptable Dependency Licenses
...
Example email to the Incubator PMC with the results of the vote.
...
Publishing, distributing and announcing the Release
...
Move the source, binaries and corresponding signature files from staging (dev) folder to the release dist site: https://dist.apache.org/repos/dist/release/madlib/ . Use the
svn mv
command. Example below:svn mv https://dist.apache.org/repos/dist/dev/madlib/1.12.RC1/ https://dist.apache.org/repos/dist/release/madlib/1.12/
Remove old releases from the dev dist sites
Retrieve the subversion release madlib repo if you have not done so already
Example:svn checkout https://dist.apache.org/repos/dist/dev/madlib/ --username=<your apache user id>
- Delete the folders from local working copy using
svn delete <folder to delete>
.
E.g.svn delete 1.12.RC1/
- Commit the deletions:
svn commit -m 'Removing 1.12 RC releases' --username=<your apache user id>
- 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.apache.org/docs/latest/. Update the MADlib website ... review previous release commits for details:
- Upload latest release documentation (including docs/latest symlink)
- Update Download page
- Upload latest design.pdf
- Update MADlib home page with release news
- Apply release tag referencing git hash representing final release candidate:
git tag -u 57325522 --sign rel/v1.12 -m "Apache MADlib 1.12" 46795de0254d2cb7755ee9336be5fef2a187e8c9
git push upstream <your release tag>
- In the asf-site branch of madlib-site repo,
git mv
the content ofdocs/rc
folder into the latest release folder.- Update the
latest
symlink to point to the latest release folder.
- After doing the above change, wait for at least 24 hours and then announce the release on announce@apache.org, user@madlib.apache.org and dev@madlib.apache.org mailing lists. See example email of past announcement.
...
...
Create PostgreSQL Extension Network Release
...
- Some of the content of this page came from the Apache HAWQ project, which is another good guide for release process: https://cwiki.apache.org/confluence/display/HAWQ/Release+Process%3A+Step+by+step+guide
...