用于设置Plone站点的Buildout配方。
项目描述
简介
此配方基于 collective.recipe.plonesite。它提供了创建和更新Plone站点的配方,对Plone站点运行脚本以及设置其属性的配方。如果您使用zeoserver,所有配方都将适当启动和停止zeo(例如,如果不是启动进程,则不会停止它)。当与 isotoma.recipe.zope2instance 结合使用时,它可以正确处理错误,结束buildout运行而不是继续并成功。
管理Plone站点
本配方允许您在buildout运行过程中创建和更新Plone站点。本配方仅旨在运行配置文件和Quickinstall产品。假设安装方法、setuphandlers、升级步骤和其他配方将处理其余工作。
要使用它,请在您的配方中添加类似以下内容
[plonesite] recipe = isotoma.recipe.plonetools:site products = LinguaPlone iw.fss you.YourProduct
参数
- site-id
脚本将创建的Plone站点的id。创建站点后,也将用于更新站点。默认:Plone
- admin-user
作为“Manager”使用的管理员的id。默认:admin
- products-initial
在初始站点创建后立即快速安装的产品列表。有关产品名称格式信息,请参阅上面[2]。
- profiles-inital
在初始站点创建后立即运行的GenericSetup配置文件列表。有关期望的配置文件id格式信息,请参阅上面[1]。
- products
每次运行buildout时快速安装的产品列表。有关产品名称格式信息,请参阅上面[2]。
- profiles
每次运行buildout时运行的GenericSetup配置文件列表。有关期望的配置文件id格式信息,请参阅上面[1]。
- instance
运行脚本的实例名称。默认:instance
- zeoserver
应使用的zeoserver部分的名称。仅当您使用zope/zeo设置时才需要此内容。默认:未设置
- before-install
在安装Plone之前要执行的系统命令。可选。您可以使用此选项启动Supervisor守护程序以启动ZEO,而不是直接启动ZEO。您可以使用此选项代替zeoserver选项。
- after-install
在安装Plone之后要执行的系统命令。可选。
- site-replace
替换任何现有名为site-id的plone站点。默认:false
- enabled
启动实例/zeoserver的选项。默认:true。如果您不想启动Zope,但仍然想运行完整的buildout,则此选项在命令行中非常有用。
$ bin/buildout -Nv plonesite:enabled=false
- pre-extras
在运行Quickinstaller和GenericSetup配置文件之前要评估的包含python代码的文件的绝对路径。可以提供多个文件。您将有两个变量可用。app变量是zope根。portal变量是定义为site-id选项的plone站点。注意:文件路径不能包含空格。默认:未设置
- post-extras
在运行Quickinstaller和GenericSetup配置文件之后要评估的包含python代码的文件的绝对路径。可以提供多个文件。您将有两个变量可用。app变量是zope根。portal变量是定义为site-id选项的plone站点。注意:文件路径不能包含空格。默认:未设置
- properties
提供属性名值映射的部分的名称。
设置属性
您可以从buildout设置plone站点对象的属性
[portal-properties] somestring = some string somebool = True somelist = 1 2 3 [plonesite] recipe = isotoma.recipe.plonetools:site <SNIP> properties = portal-properties
以这种方式设置的属性与Plone站点对象更新同时进行,在同一个zope实例调用期间,因此比使用单独的菜谱更高效。
在Plone对象上调用设置器
作为最后的手段,您可以直接从buildout调用设置器。这适用于像CacheSetup这样的东西,其中您的缓存域可能在不同的环境中有所不同。
只需添加
[mutators] some.object.setFoo = True some.object.setList = 1 2 3 some.other.object.setBar = some string [plonesite] recipe = isotoma.recipe.plonetools:site <SNIP> mutators = mutators
同样,这些属性是在门户属性应用和GenericSetup运行时设置的,因此不需要额外的zope调用。
迁移脚本
如果您在buildout中有plonesite:site部分,您将在bin目录中得到一个plonesite脚本。
不带参数运行此脚本将执行在buildout期间运行的过程。
使用-r参数运行脚本将导致它重建站点,删除您的Plone站点对象并重新创建它。非常适合每晚重置的沙盒。
创建包装脚本
此菜谱允许您在buildouts的bin目录中创建一个脚本,以在正确的zope实例下为您运行脚本。
如果您有mypackage.myscript中的脚本
def run(): print "This is my test script
那么请将类似以下内容添加到您的菜谱中
[instance] recipe = isotoma.recipe.zope2instance otherprops = here [wrappers] recipe = isotoma.recipe.plonetools:wrapper instance = instance entry-points = myscript=mypackage.myscript:run
必选参数
- 入口点
这些类似于setuptools中使用的入口点,形式为wrappername=your.product.module:function
可选参数
- instance
用于运行脚本的zope2instance部分的名称。默认:instance。
- 参数
要传递给入口点的某些参数,作为python。默认:app
变更日志
0.0.17 (2014-11-20)
调用子脚本时忽略现有的PYTHONPATH。
0.0.16 (2012-10-09)
最合理的过程是
创建空站点
运行初始配置文件
运行主要配置文件
迁移挂载点
我想。
0.0.15 (2012-10-05)
修复迁移脚本中的回归。
0.0.14 (2012-10-03)
当在zope.conf中声明挂载点时,自动迁移以分割Data.fs
0.0.13 (2011-09-29)
添加一个新的“rootify”选项。目前它仅适用于virtualenv用户。
0.0.12 (2011-09-23)
修复Plone 3支持(创建新站点受4.1/2.5更改的影响)
0.0.11 (2011-09-22)
属性和脚本辅助工具不再受支持
编写一个可以在不运行buildout其余部分的情况下运行迁移的脚本
此脚本支持-r标志,可以从头开始重新构建/portal对象。
如果CMFSquidTool有一个无尽的清除队列,则不要挂起
删除JSON依赖
更好的2.5和4.1支持
0.0.10 (2011-09-21)
使用savepoint()而不是subtransaction
在快速安装和应用配置文件时提供更有用的输出
0.0.9 (2011-09-03)
添加从buildout调用任何设置器的支持
如果发生短暂错误,将重试多达${:attempts}次。
0.0.8 (2011-08-30)
支持子事务(停止CacheSetup挂起)
允许Site菜谱在没有单独的属性部分的情况下设置属性
0.1 (2010-04-24)
创建了collective.recipe.plonesite的友好分支
捕获非零退出代码
添加了一个测试,以查看在启动之前zeo是否正在运行
仅在我们启动它的情况下关闭zeo
项目详情
isotoma.recipe.plonetools-0.0.17.zip 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 23f09077bc7888e48e6effa7e574c0334f4b2ef8afdda1e2d1c9b5bdc20eada8 |
|
MD5 | 1d63b5d24eb8fdd9d84af8c7b64a8c09 |
|
BLAKE2b-256 | 7e51fe121b1b228c3601b94c7613cb312bdf7fdd260178a470d054f298b6a04e |