8

我正在尝试使用构建和我自己的代码来部署 OpenERP。事实上,我想建立一个完整的部署结构,允许我使用带有自定义模块和补丁的 OpenERP。

首先,在添加任何个人配置之前,我试图创建一个构建,它将负责配置所有内容。

扩建配置

我的 buildout.cfg 配置文件如下所示:

[buildout]
parts = eggs
versions=versions
newest = false
extensions = lovely.buildouthttp
unzip = true
find-links =
       http://download.gna.org/pychart/
[versions]

[eggs]
recipe = zc.recipe.egg
interpreter = python
eggs =
     Paste
     PasteScript
     PasteDeploy
     psycopg2
     PyChart
     pydot
     openerp-server

配置问题

但是在尝试启动构建时,我在尝试安装最后一个需要的鸡蛋(openerp-server)时遇到了几个错误

在我这边,它只是找不到这些模块,但它们在我的鸡蛋目录中:

Error: python module psycopg2 (PostgreSQL module) is required
Error: python module libxslt (libxslt python bindings) is required
Error: python module pychart (pychart module) is required
Error: python module pydot (pydot module) is required
error: Setup script exited with 1
An error occured when trying to install openerp-server 5.0.0-3. Look above this message for any errors that were output by easy_install.
Is this possible that openerp hardcoded the his searching path somewhere ?

easy_install,试试

我决定尝试一个干净的 virtualenv,与主站点包没有任何关系。但是在 openerp-server 上使用 easy_install 时:

$ source openerp-python/bin/activate
$ easy_install openerp-server
...
  File "build/bdist.linux-i686/egg/pkg_resources.py", line 887, in extraction_error
pkg_resources.ExtractionError: Can't extract file(s) to egg cache

The following error occurred while trying to extract file(s) to the Python egg
cache:

  SandboxViolation: mkdir('/home/mlhamel/.python-eggs/psycopg2-2.0.13-py2.5-linux-x86_64.egg-tmp', 511) {}

我总是收到错误消息,但是我的机器上是否安装了 psypg2

系统配置

  • Ubuntu 9.10 x86-64
  • 在 Python 2.5/Python 2.6 上试过
4

3 回答 3

2

好的,我最近这样做了:

不要尝试安装egg,openerp 不是很标准。

我使用了这个构建片段:

# get the openerp-stuff as a distutils package
[openerp-server]
recipe = zerokspot.recipe.distutils
urls = http://www.openerp.com/download/stable/source/openerp-server-5.0.6.tar.gz

# similar idea for the web component
[openerp-web]
recipe = zc.recipe.egg:scripts
find-links  = http://www.openerp.com/download/stable/source/openerp-web-5.0.6.tar.gz

# add some symlinks so you can run it out of bin
[server-symlinks]
recipe = cns.recipe.symlink
symlink =  ${buildout:parts-directory}/openerp-server/bin/openerp-server = ${buildout:bin-directory}

然而,关键是我没有使用virtualenv。您不需要进行扩建。Buildout + virtualenv 就像 Trojan + Ramses ......一个就足够了,除非你......好吧,一个就足够了。;)

现在对于这个特定的项目,我遵循了 debian 的说明并通过 aptitude 安装了所需的库。这只是因为我当时是新手,可以很容易地安装 psycopg2 模块

这里有一些很好的说明。如果你不需要它,请忽略 django 的东西。丹·费尔斯(Dan Fairs)既是一位伟大的作家,也是一位伟大的扩建导师。一探究竟。免责声明:我是这个人的弟子,基于他的扩建用法。

我确定你不想在 pypi 上使用 egg,它对我没有用,openerp 没有蛋化,它是一个 distutils 包。

祝你好运!

于 2010-02-17T02:44:17.750 回答
1

仅作记录:Pypi 中提供了 OpenERP 的构建配方。

于 2013-01-03T11:35:33.923 回答
0

我对 buildout 不熟悉,但如果我要尝试构建 OpenERP 安装程序,我会先从Open Source Consulting看一个不错的安装程序。我已经使用它并且对它非常满意。

上次我检查时,它没有设置 CRM 电子邮件网关,但我需要的所有其他内容都已涵盖。

于 2010-02-08T17:46:56.657 回答