Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install rod.recipe.mongodb

How to install rod.recipe.mongodb

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install rod.recipe.mongodb
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.2.2 Available View build log
1.2.1 Available View build log
Windows (64-bit)
1.2.2 Available View build log
1.2.1 Available View build log
Mac OS X (10.5+)
1.2.2 Available View build log
1.2.1 Available View build log
Linux (32-bit)
1.2.2 Available View build log
1.2.1 Available View build log
Linux (64-bit)
1.2.2 Available View build log
1.2.1 Available View build log
 
License
LGPL 3
Lastest release
version 1.2.2 on Jan 22nd, 2011

Buildout recipe for downloading and installing mongoDB. Visit http://www.mongodb.org for further details on mongoDB.

Credits

Thanks to Andreas Jung for provinding a patch to symlink all mongoDB binaries.

Thanks to Stephan Hofmockel who contributed a patch for creating a start script with custom command line parameters specified as buildout options.

A brief documentation

This recipe takes a number of options:

darwin-32bit-url The URL to download the 32 bit binary package for the darwin platform.

darwin-64bit-url The URL to download the 64 bit binary package for the darwin platform.

linux2-32bit-url The URL to download the 32 bit binary package for the linux platform.

linux2-64bit-url The URL to download the 64 bit binary package for the linux platform.

(And all options of mongod version v1.6.0 as described below.)

Tests

We will define a buildout template used by the recipe:

>>> buildout_cfg = """
... [buildout]
... parts = mongodb
...
... [mongodb]
... recipe = rod.recipe.mongodb
... darwin-32bit-url = http://downloads.mongodb.org/osx/mongodb-osx-i386-1.6.5.tgz
... darwin-64bit-url = http://downloads.mongodb.org/osx/mongodb-osx-x86_64-1.6.5.tgz
... linux2-32bit-url = http://downloads.mongodb.org/linux/mongodb-linux-i686-1.6.5.tgz
... linux2-64bit-url = http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.6.5.tgz
... """

We'll start by creating a buildout:

>>> import os.path
>>> write('buildout.cfg', buildout_cfg)

Running the buildout gives us:

>>> output = system(buildout)
>>> 'rod.recipe.mongodb: downloading mongoDB distribution...' in output
True

Check whether the binaries are copied:

>>> set(os.listdir('bin')).issuperset(['mongo', 'mongod', 'mongodump', 'mongoexport', 'mongofiles', 'mongoimport', 'mongorestore', 'mongos', 'mongosniff', 'mongostat'])
True

A start script with the format 'start_PART-NAME_mongod.sh' should be generated.

>>> 'start_mongodb_mongod.sh' in os.listdir('bin')
True

It is possible to change the name of this start script with the 'script_name' option. Furthermore all options of mongod (version v1.6.0) are supported via buildout options. A more comprehensive recipe could be for example:

>>> buildout_cfg = """
... [buildout]
... parts = mongodb
... [mongodb]
... recipe = rod.recipe.mongodb
... darwin-32bit-url = http://downloads.mongodb.org/osx/mongodb-osx-i386-1.6.5.tgz
... darwin-64bit-url = http://downloads.mongodb.org/osx/mongodb-osx-x86_64-1.6.5.tgz
... linux2-32bit-url = http://downloads.mongodb.org/linux/mongodb-linux-i686-1.6.5.tgz
... linux2-64bit-url = http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.6.5.tgz
... script_name = start_master.sh
... quiet=true
... fork=true
... logpath=${buildout:parts-directory}/mongodb/log
... dbpath=${buildout:parts-directory}/mongodb/data
... directoryperdb=true
... master=true
... update=true
... """
>>> write('buildout.cfg', buildout_cfg)

Re-running the buildout:

>>> output = system(buildout)

Changes

1.2.2 2011-01-21
  • Added buildout option 'update=true/false' to force or prevent updating

System Message: WARNING/2 (<string>, line 120)

Bullet list ends without a blank line; unexpected unindent.

the part.

1.2.1 2010-08-11
  • Added missing command line parameters for Replica Sets (MongoDB 1.6.0).
1.2.0 2010-05-16
  • Creating start script with command line parameters specified as buildout

System Message: WARNING/2 (<string>, line 133)

Bullet list ends without a blank line; unexpected unindent.

options.

1.1.4 2010-04-18
  • Symlinking rather than copying binaries.
1.1.0 2010-04-15
  • Copying all MongoDB binaries into the 'bin' folder of the buildout

System Message: WARNING/2 (<string>, line 146)

Bullet list ends without a blank line; unexpected unindent.

environment (ajung).

1.0.1 2009-08-21
  • Removing part before updating.
1.0.0 2009-08-14
  • Initial release.

Subscribe to package updates

Last updated Jan 22nd, 2011

Download Stats

Last month:3

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.