Differences between revisions 96 and 97
Revision 96 as of 2012-08-09 08:26:12
Size: 5102
Comment: inline images!
Revision 97 as of 2013-03-27 09:00:43
Size: 4824
Comment: updates for Noah's new 1.2.2 / 1.3.0 approach
Deletions are marked like this. Additions are marked like this.
Line 19: Line 19:
Following an official source vote, a Windows binary is created. The procedure for this is documented in [[https://git-wip-us.apache.org/repos/asf?p=couchdb.git;a=blob;f=INSTALL.Windows;hb=HEAD|INSTALL.Windows]] and a scripted approach is available in the appropriate branch of [[https://github.com/dch/glazier/|glazier]], tagged per source release. Following an official source vote, a Windows binary is created. The procedure for this is documented in [[https://git-wip-us.apache.org/repos/asf?p=couchdb.git;a=blob;f=INSTALL.Windows;hb=HEAD|INSTALL.Windows]] and a scripted approach is available in the appropriate branch of [[https://github.com/dch/glazier/|glazier]], branched and tagged per source release.
Line 21: Line 21:
After the binary is built, it is then [[http://www.apache.org/dev/release-signing.html#sign-release|signed]] and uploaded to the appropriate committer's [[https://people.apache.org/~id|apache site]]. After the binary is built, it is then [[http://www.apache.org/dev/release-signing.html#sign-release|signed]] and uploaded to [[https://dist.apache.org/repos/dist/dev/couchdb/binary/win|the svn repository]] under {{{/$RELEASE/$VERSION}}}.
Line 31: Line 31:
 * Run the installer or use the [[http://innounp.sourceforge.net/|Inno setup unpacker]]  * Run the installer directly, into a separate directory, or use the [[http://innounp.sourceforge.net/|Inno setup unpacker]]. There is no requirement to uninstall your existing CouchDB.
Line 33: Line 33:
 * If required, rerun the installer into a separate directory and start CouchDB via the provided {{{couchdb.bat}}} script.
 * Run Firefox >=4, launch Private Browsing mode, and disable caching in {{{about:config}}} by setting both {{{browser.cache.disk.enable = false}}} and {{{network.http.use-cache = false}}} temporarily:

{{attachment:firefox_cache_settings.png}}

 * Use Futon to run the basic [[http://127.0.0.1:5984/_utils/verify_install.html|user verification]] tests as well as the full [[http://127.0.0.1:5984/_utils/couch_tests.html?script/couch_tests.js|dev test suite]].
 * Some tests may fail occasionally depending on the speed of your PC and the phases of the moon. It's fine to re-try a few times, or to test over LAN connection rather than localhost.
 * Start CouchDB via the provided {{{couchdb.bat}}} script.
 * Use Futon to run the basic [[http://127.0.0.1:5984/_utils/verify_install.html|user verification]] tests. There is no need to run the full [[http://127.0.0.1:5984/_utils/couch_tests.html?script/couch_tests.js|dev test suite]], as these are being removed in coming releases anyway, for a more robust command-line test suite during build time.
Line 43: Line 38:
== Giving Feedback on the Binaries == = Giving Feedback on the Binaries =
Line 50: Line 45:
signature OK gpg sig OK
Line 54: Line 49:
Futon tests failed
[... tedious details ommitted.. ]
Line 57: Line 50:

We have a new wiki. The migration is not 100% complete. You can help out by moving pages across. This wiki will exist for as long as there are pages left.

The official documentation has moved to http://docs.couchdb.org — The transition is not 100% complete, but http://docs.couchdb.org should be seen as having the latest info. In some cases, the wiki still has some more or older info on certain topics inside CouchDB.

You need to be added to the ContributorsGroup to edit the wiki. But don't worry! Just email any Mailing List or grab us on IRC and let us know your user name.

This page details how Windows binaries are validated and voted on. Any Apache CouchDB committer is free to make a binary package, but they are usually made by the committers. There is an important distinction between regular packages and snapshot packages, namely:

  • Packages to be distributed via the official Apache mirrors must be built from an official source release or signed tag equivalent
  • Snapshots may be provided at any time, from any tree-ish, but should be restricted to personal Apache space or elsewhere

Regular packages may be linked to from the CouchDB website, and promoted alongside the source releases. Snapshot packages are for developers only, and will not be promoted. This distinction ensures that the user community can rely on binary packages corresponding to source releases, and that the developer community can test binary packages while not being obligated to maintain or support them.

Introduction

Following an official source vote, a Windows binary is created. The procedure for this is documented in INSTALL.Windows and a scripted approach is available in the appropriate branch of glazier, branched and tagged per source release.

After the binary is built, it is then signed and uploaded to the svn repository under /$RELEASE/$VERSION.

Send an email to the dev@ mailing list, requesting feedback on the proposed binaries. This should follow the general CouchDB release procedure for consistency. Ensure you link to the test procedure.

Testing

Overall we are interested that the binary is malware free, correctly signed, and digests match, and functionality matches that of the original source tarball.

  • Verify the GPG signature. Additional tips are available at Introduction to GPG for Windows.

  • Validate the MD5 and SHA digests using md5 and sha for Windows or similar

  • Run the installer directly, into a separate directory, or use the Inno setup unpacker. There is no requirement to uninstall your existing CouchDB.

  • Confirm using antivirus software there are no viruses or malware present. Microsoft provides the free Security Essentials.

  • Start CouchDB via the provided couchdb.bat script.

  • Use Futon to run the basic user verification tests. There is no need to run the full dev test suite, as these are being removed in coming releases anyway, for a more robust command-line test suite during build time.

  • FIX LATER: Double-check README, INSTALL.Windows, NEWS, LICENSE, and CHANGES files are present in %COUCHDIR%/share/doc/couchdb/ and contents is appropriate. At present these are gzipped but this should be fixed, and added as shortcuts.

Giving Feedback on the Binaries

  • Reply to the original binary package proposal - for example;
    +1
    Windows 7 x64 SP1
    Firefox 10.12
    gpg sig OK
    md5 & sha OK
    No malware detected
    End-user verification OK
  • If the original source artefact vote is aborted, please ensure you remove any copies of the binary to avoid these escaping into the wild.
  • Full details are on the main CouchDB Release procedure.

After the source artefact vote is successful, three things must be updated:

  • Approved binaries and sha/md5/asc keys to be moved into the official Apache CouchDB /www/www.apache.org/dist/couchdb/binary/win32/x.y.z/ environment

  • Subsequent update of CouchDB downloads page.
  • Once these are available on mirrors, the confirmation announcement can be sent.

NOTES

  • currently working with HTTPD team to see if the new fancypants code signing is usable
  • still need way of referencing the detailed build process, and labelling artefacts.

If you'd like to help out, let us know on the couchdb-dev mailing list.

Windows_Binary_Packages (last edited 2013-03-27 09:00:43 by DaveCottlehuber)