Update documentation to reflect reality (no win32 gitian builds, new Mac process)
[novacoin.git] / doc / release-process.txt
index f888239..ceff724 100644 (file)
@@ -1,22 +1,61 @@
+* update (commit) version in sources
+  src/serialize.h
+  share/setup.nsi
+
+* update (commit) version in OSX app bundle
+ contrib/Bitcoin.app/Contents/Info.plist
+
+  * CFBundleShortVersionString should have value like 0.5.0
+  * CFBundleVersion should have value like 500
 
 * tag version in git
 
-  $ git tag -a v0.3.23
+  $ git tag -a v0.5.0
 
 * write release notes.  git shortlog helps a lot:
 
-  $ git shortlog --no-merges v0.3.22..
+  $ git shortlog --no-merges v0.4.0..
 
 * create source-only archive
 
-  $ git archive --format=tar --prefix=bitcoin-0.3.23/ HEAD | \
-       gzip -9c > ~/tmp/bitcoin-0.3.23-src.tar.gz 
+  $ git archive --format=tar --prefix=bitcoin-0.5.0/ HEAD | \
+       gzip -9c > ~/tmp/bitcoin-0.5.0-src.tar.gz 
 
 * perform gitian builds
 
-  { insert useful info here }
-* upload source and builds to SF
+  * From a directory containing the bitcoin source, gitian-builder and gitian.sigs
+  $ export VERSION=0.5.0
+  $ cd ./gitian-builder
+  $ ./bin/gbuild --commit bitcoin=v$VERSION ../bitcoin/contrib/gitian-descriptors/gitian.yml
+  $ ./bin/gsign --signer (your gitian key, ie bluematt, sipa, etc) --release $VERSION --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian.yml
+  $ cd build/out
+  $ zip bitcoin-$VERSION-linux-gitian.zip *
+  $ mv bitcoin-$VERSION-linux-gitian.zip ../../
+
+  * NOTE: gitian cross-compiled builds for Windows is broken, we are building
+    Windows binaries using a public Amazon AWS instance for this release.
+
+  Build output expected:
+  1. linux 32-bit and 64-bit binaries + source (bitcoin-$VERSION-linux-gitian.zip)
+  2. Gitian signatures (in gitian.sigs/$VERSION[-win32]/(your gitian key)/
+
+* repackage gitian builds for release as stand-alone zip/tar/installer exe
+
+  * Linux .tar.gz:
+  $ mkdir bitcoin-$VERSION-linux
+  $ cd bitcoin-$VERSION-linux
+  $ unzip bitcoin-$VERSION-linux-gitian.zip
+  $ cd ..; tar czvf bitcoin-$VERSION-linux.tar.gz bitcoin-$VERSION-linux
+
+* Compile Windows .zip and setup.exe on Amazon EC2 instance
+  TODO: document process
+
+* perform Mac build
+  TODO: document process
+
+* upload source and builds to SourceForge
+
+* create SHA1SUMS for builds, and PGP-sign it
 
 * update bitcoin.org version
 
 
 * update wiki download links
 
+* release gitian-signed gitian archives
+
+  * Collect enough gitian signatures to meet minimum_weight (see contrib/gitian-downloader/*-download-config)
+
+  * From a directory containing bitcoin source, gitian.sigs and gitian zips
+  $ export VERSION=0.5.0
+  $ mkdir bitcoin-$VERSION-linux-gitian; cd bitcoin-$VERSION-linux-gitian
+  $ unzip ../bitcoin-$VERSION-linux-gitian.zip
+  $ mkdir gitian
+  $ cp ../bitcoin/contrib/gitian-downloader/*.pgp ./gitian/
+  $ for file in `ls ../gitian.sigs/$VERSION/`; do
+  $   cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert ./gitian/$file-build.assert
+  $   cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert.sig ./gitian/$file-build.assert.sig
+  $ done
+  $ zip bitcoin-$VERSION-linux-gitian.zip *
+  $ cp bitcoin-$VERSION-linux-gitian.zip ../
+
+  * Upload gitian zips to SourceForge
+