2012-02-02 36 views
0

我们正在从一个Zope实例切换到我们的productoin Plone部署。我有以下的扩建结构定义:使用扩展部分扩展切换到2个Plone实例时,不会通过扩展删除“实例”部分

buildout.cfg

[buildout] 
extends = app.cfg 
... some environment specific stuff 

app.cfg

[buildout] 
extends = base.cfg 

parts = 
    zope2 
    productdistros 
    instance1 
    instance2 
    zopepy 
    supervisor 

[instance1] 
<= instance 
http-address = 18081 

[instance2] 
<= instance 
http-address = 18082 

base.cg

[buildout] 
parts = 
    zope2 
    productdistros 
    instance 
    zopepy 

... bulk of buildout configuration suitable for both server and development 

测试此,我期望这个扩建配置导致现有实例部分被删除并替换为instance1和instance2。但是实例部分不会被删除 - 它仍然可以在bin和parts目录中找到。

[[email protected] home]$ bin/buildout 
Updating zope2. 
Updating fake eggs 
Updating productdistros. 
Updating instance1. 
Updating instance2. 
Updating instance. 
Updating zopepy. 
Updating supervisor. 

我有一个从一开始这种方式配置不同的Zope实例非常相似的设置和它没有“实例”的一部分。

我们使用Python 2.4.6构建Plone 3.3.6来运行zc.buildout 1.4.4。

我已经试过没有变化如下: *升级到1.5.2扩建* 从base.cfg

+0

我觉得这是附加件(错误?)一个问题,因为实例定义为依赖关系。尝试删除所有虚线文件(.installed.cfg或其他东西),看看它是否有助于构建忘记实例。 – 2012-02-02 15:36:40

+0

没有运气。我也尝试删除bin和部分目录并运行'python bootstrap.py',但这也不起作用 – scarba05 2012-02-02 16:17:16

回答

0

这实际上是由于zc.buildout automatic part selection特征

当与配方中的部分被称为,无论是通过可变取代或由一个初始化配方,区段被视为一个部分,并加入到部分列表中的参考部分

之前我有以下部分

[zopepy] 
# For more information on this step and configuration options see: 
# http://pypi.python.org/pypi/zc.recipe.egg 
recipe = zc.recipe.egg 
eggs = ${instance:eggs} 

因为它引用了“实例”部分,“实例”包含在部件列表中。

要解决我改成了复制粘贴实例

eggs = 
    Plone 
    ${buildout:eggs} 

的卵值,然后跑斌/扩建

1

这是一个plone.recipe.zope2instance“功能”去掉部分分配。传统上,配方避免删除它为运行plone创建的实例和脚本(无论出于何种原因:设计不当或故意做出决定,我不确定)。

对于任何值得的东西,从版本4.2.0开始,有support for generating non-plone scripts(类似于zc.recipe.egg),并且这些脚本管理得当。请参阅:

所有血淋淋的细节。 (我相信“功能”是安装方法不会返回元组,除非您使用的脚本包含脚本的元组返回)。

+0

感谢Alex。这是有道理的,但有没有办法我可以手动删除它呢? – scarba05 2012-02-03 07:37:18

+0

你可以只rm -rf部分/实例,IIUC你在问什么。 – aclark 2012-02-03 18:19:14

+0

我已经尝试在运行'python bootstrap.py'前尝试删除bin和部件目录,但那不起作用 – scarba05 2012-02-06 10:44:37