THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Build the release and run unit tests:
Code Block ant clean ant test ant clean ant jar cd contrib/zebra ant cd ../.. cd contrib/piggybank/java ant cd ../../.. ant -Dversion=X.Y.Z -Dforrest.home=<Forrest installation dir> tar
- Test the tar file by unpacking the release and
- building pig.jar:
ant
- building and running tutorial
Code Block cd tutorial ant
- build piggybank
Code Block cd contrib/piggybank/java ant
- running unit tests
ant test
- building pig.jar:
ant -Dversion=X.Y.Z -Dforrest.home=<Forrest installation dir> rpm (on a Fedora/Redhat system) ant -Dversion=X.Y.Z -Dforrest.home=<Forrest installation dir> deb (on a Ubuntu/Debian system)
- Test the tar file by unpacking the release and
- building pig.jar:
ant
- building and running tutorial
Code Block cd tutorial ant
- build piggybank
Code Block cd contrib/piggybank/java ant
- running unit tests
ant test
- building pig.jar:
- Generate the MD5 checksum of the release file:
Code Block cd build md5sum pig-X.Y.Z.tar.gz > pig-X.Y.Z.tar.gz.md5 md5sum pig-X.Y.Z-1.i386.rpm > pig-X.Y.Z-1.i386.rpm.md5 md5sum pig-X.Y.Z-1.i386.deb > md5sum pig-X.Y.Z-1.i386.deb.md5
- If you do not have a gpg key pair, do the following steps:
- Generating key pair using the following command. You can simply accept all default settings and give your name, email and Passphase.
Code Block gpg --gen-key
- Export your public key.
Code Block gpg --armor --output pubkey.txt --export 'Your Name'
- Open pubkey.txt, copy the full text and append it to the following files by pasting, then commit these changes:
Code Block https://svn.apache.org/repos/asf/pig/branches/branch-X.Y.Z/KEYS https://svn.apache.org/repos/asf/pig/trunk/KEYS
- Upload updated KEYS to Apache.
Code Block scp KEYS people.apache.org:/www/www.apache.org/dist/pig/KEYS
- Export your private key, keep it with you.
Code Block gpg --export-secret-key -a "Your Name" > private.key
- Generating key pair using the following command. You can simply accept all default settings and give your name, email and Passphase.
- Sign the release (see Step-By-Step Guide to Mirroring Releases for more information).
Generate the MD5 checksum of the release file:Code Block gpg --armor --output
If you do not have a gpg key pair, do the following steps:Code Block cd build md5sum pig-X.Y.Z.tar.gz > pig-X.Y.Z.tar.gz.md5
- Generating key pair using the following command. You can simply accept all default settings and give your name, email and Passphase.
Code Block gpg --gen-key
Export your public key. - Upload updated KEYS to Apache.
Code Block scp KEYS people.apache.org:/www/www.apache.org/dist/pig/KEYS
- Verify gpg signatureExport your private key, keep it with you.
export-secret-key -a "Your Name" > private.key Sign the release (see Step-By-Step Guide to Mirroring Releases for more information).Code Block gpg --
Verify gpg signature.Code Block import KEYS (if necessarily) gpg --armorverify --outputpig-X.Y.Z.tar.gz.asc pig-X.Y.Z.tar.gz.asc gpg --detach-sigverify pig-X.Y.Z-1.tar.gz
Code Block gpg --import KEYS (if necessarily)i386.rpm.asc pig-X.Y.Z-1.i386.rpm gpg --verify pig-X.Y.Z-1.tari386.gzdeb.asc pig-X.Y.Z-1.tari386.gzdeb
- Copy release files to a public place (usually into public_html in your home directory):
Code Block ssh people.apache.org mkdir public_html/pig-X.Y.Z-candidate-0 scp -p pig-X.Y.Z.tar.gz* people.apache.org:public_html/pig-X.Y.Z-candidate-0 cd .. scp RELEASE_NOTES.txt people.apache.org:public_html/pig-X.Y.Z-candidate-0
- Push proposed release to Maven staging area
- Create file ~/.m2/settings.xml with following contents (NOTE: It is highly recommended to use Maven's password encryption capabilities for your passwords.):
Code Block <settings> <servers> <server> <id>apache.releases.https</id> <username>your apache id</username> <password>your apache password</password> </server> <server> <id>apache.snapshots.https</id> <username>your apache id</username> <password>your apache password</password> </server> <server> <id>apache.staging.https</id> <username>your apache id</username> <password>your apache password</password> </server> </servers> <profiles> <profile> <id>apache-release</id> <properties> <gpg.passphrase>your GPG password</gpg.passphrase> </properties> </profile> </profiles> </settings>
- Run ant command
ant mvn-deploy
to publish Pig artifacts to the apache snapshot repository. - Run ant command
ant –Drepo=staging –Dversion=X.Y.Z mvn-deploy
to publish Pig artifacts to the apache staging repository.
- Create file ~/.m2/settings.xml with following contents (NOTE: It is highly recommended to use Maven's password encryption capabilities for your passwords.):
- Call a release vote. The initial email should be sent to
dev@pig.apache.org
. Make sure to attache rat report to it. Here is a sample of email:Code Block From: Olga Natkovich [mailto:olgan@yahoo-inc.com] Sent: Tuesday, November 25, 2008 3:59 PM To: dev@pig.apache.org Subject: [VOTE] Release Pig 0.1.1 (candidate 0) Hi, I have created a candidate build for Pig 0.1.1. This release is almost identical to Pig 0.1.0 with a couple of exceptions: (1) It is integrated with hadoop 18 (2) It has one small bug fix (PIG-253) (3) Several UDF were added to piggybank - pig's UDF repository The rat report is attached. Keys used to sign the release are available at http://svn.apache.org/viewvc/pig/trunk/KEYS?view=markup. Please download, test, and try it out: http://people.apache.org/~olga/pig-0.1.1-candidate-0 Should we release this? Vote closes on Wednesday, December 3rd. Olga
asc --detach-sig pig-X.Y.Z.tar.gz gpg --armor --output |
pig-X.Y.Z-1.i386.rpm.asc --detach-sig pig-X.Y.Z |
-1.i386.rpm
gpg --armor --output pig-X.Y.Z-1.i386.deb.asc --detach-sig pig-X.Y.Z-1.i386.deb
|
...