ZC Buildout recipe for setting up mongoDB.
项目描述
用于下载和安装mongoDB的Buildout配方。有关mongoDB的更多详细信息,请访问http://www.mongodb.org。
版权和许可协议
版权 2009, 2010, 2011 Tobias Rodaebel
本软件根据GNU较宽松的通用公共许可证版本3发布。
致谢
感谢Andreas Jung提供的补丁,用于创建所有mongoDB二进制文件的符号链接。
感谢Stephan Hofmockel提供的补丁,用于创建具有自定义命令行参数的启动脚本,这些参数作为buildout选项指定。
简要文档
此配方包含一些选项
- darwin-32bit-url
用于下载darwin平台32位二进制软件包的URL。
- darwin-64bit-url
用于下载darwin平台64位二进制软件包的URL。
- linux2-32bit-url
用于下载linux平台32位二进制软件包的URL。
- linux2-64bit-url
下载 Linux 平台 64 位二进制软件包的 URL。
(以及以下描述的 mongod 版本 v1.6.0 的所有选项。)
测试
我们将定义一个由配方使用的 buildout 模板
>>> 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 ... """
我们首先创建一个 buildout
>>> import os.path >>> write('buildout.cfg', buildout_cfg)
运行 buildout 给我们
>>> output = system(buildout) >>> 'rod.recipe.mongodb: downloading mongoDB distribution...' in output True
检查是否已复制二进制文件
>>> set(os.listdir('bin')).issuperset(['mongo', 'mongod', 'mongodump', 'mongoexport', 'mongofiles', 'mongoimport', 'mongorestore', 'mongos', 'mongosniff', 'mongostat']) True
应生成格式为 'start_PART-NAME_mongod.sh' 的启动脚本。
>>> 'start_mongodb_mongod.sh' in os.listdir('bin') True
可以通过 'script_name' 选项更改此启动脚本的名称。此外,通过 buildout 选项支持 mongod(版本 v1.6.0)的所有选项。例如,一个更全面的配方可能是
>>> 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)
重新运行 buildout
>>> output = system(buildout)
变更
1.2.2 2011-01-21
添加了 buildout 选项 'update=true/false' 以强制或防止更新部分。
1.2.1 2010-08-11
添加了副本集(MongoDB 1.6.0)缺少的命令行参数。
1.2.0 2010-05-16
使用作为 buildout 选项指定的命令行参数创建启动脚本。
1.1.4 2010-04-18
使用符号链接而不是复制二进制文件。
1.1.0 2010-04-15
将所有 MongoDB 二进制文件复制到 buildout 环境的 'bin' 文件夹中(ajung)。
1.0.1 2009-08-21
在更新之前删除部分。
1.0.0 2009-08-14
初始版本。
项目详情
rod.recipe.mongodb-1.2.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2d6b6e0b2090b77455a6d1b42f58b9d3d2a403dde246b0252a749d5a23690f3e |
|
MD5 | 65d9548799e0c7d9a4f5884ff9435fa6 |
|
BLAKE2b-256 | ba6fcb6871cdf8fc3aa922216fc415e7fc2a7b7a989866bd0b2862d832cc4b65 |