跳转到主要内容

为创建zope2instances构建的食谱

项目描述

简介

这是plone.recipe.zope2instance的一个临时分支,对退出代码处理进行了轻微调整。除非你需要这个功能,我们建议使用上游食谱。

这个食谱以部分的形式创建和配置Zope 2实例。它还在bin/目录中安装了一个控制脚本,类似于zopectl。控制脚本的名称是buildout中部分的名字。

你可以用如下部分使用它

[instance]
recipe = isotoma.recipe.zope2instance
zope2-location = /path/to/zope2/install
user = admin:admin
http-address = 8080
eggs = ${buildout:eggs} my.package
products = ${buildout:directory}/products
zcml = my.package

选项

zope2-location

Zope 2安装的路径。如果你还使用plone.recipe.zope2install食谱,并且在该zope2instance部分之前将其配置为名为‘zope2’的部分,你可以为这个参数使用${zope2:location}。

zope-conf

到zope.conf文件的相对或绝对路径。如果没有提供,将基于以下选项生成zope.conf。

repozo

repozo.py 备份脚本的路径。将为该脚本生成一个在 bin/repozo 的包装器,它将为运行此脚本设置适当的环境。默认为 “${zope2-location}/utilities/ZODBTools/repozo.py”。如果您不希望生成此脚本,请将其设置为空值。

以下所有选项都会影响生成的 zope.conf

products

一个包含 Zope 2 产品安装路径的列表。如果同一产品在多个目录中找到,则第一个路径具有优先权。

site-zcml

如果您想自定义 site.zcml 文件,请将其内容放在这里。如果使用此选项,则忽略 zcml 和 zcml-additional 选项。

zcml

为列出的包安装 ZCML slugs,用空格分隔。您可以通过添加 ‘-’ 并指定要创建的 slug 类型来指定 slug 类型。有效的类型是 configure、overrides 和 meta。一些示例:my.package-overrides my.package-meta

zcml-additional

应包含在生成的 site.zcml 文件中的额外 ZCML 语句。

extra-paths

包含额外 python 包安装路径的列表。在所有 egg 和产品路径之后按照给定顺序搜索这些路径。

default-zpublisher-encoding

这控制了在未指定其他编码的情况下,ZPublisher 使用哪种字符集对 unicode 数据进行编码。默认为 ‘utf-8’。

debug-mode

设置为 ‘on’ 以在 Zope 中打开调试模式。默认为 ‘off’。

verbose-security

设置为 ‘on’ 以打开详细安全(并切换到 Python 安全实现)。默认为 ‘off’(并使用 C 安全实现)。

effective-user

为 Zope 进程设置有效用户名称。默认为不设置有效用户。

ip-address

这是 Zope 的各种服务器协议实现将监听请求的默认 IP 地址。如果此未设置,Zope 将监听机器支持的任何 IP 地址。此指令可以在服务器部分中按服务器覆盖。默认为不设置 ip-address。

port-base

应用于 ZServer 配置使用的端口号的偏移量。例如,如果 http-server 端口为 8080 且 port-base 为 1000,则 HTTP 服务器将监听端口 9080。这使得更改 Zope 服务器进程使用的完整端口集变得容易。Zope 默认为 0。

http-address

为 HTTP 服务器提供一个端口号。默认为 8080。

http-fast-listen

设置为 off 以在 Zope 启动阶段结束时延迟打开 HTTP 套接字。默认为 on。注意:此选项需要 Zope >= 2.11。

ftp-address

为 FTP 服务器提供一个端口号。这将启用 FTP 服务器。

webdav-address

为 WebDAV 服务器提供一个端口号。这将启用 WebDAV 服务器。

webdav-force-connection-close

有效选项为 off 和 on。默认为 off

icp-address

为 ICP 服务器提供一个端口号。这将启用 ICP 服务器。

client-home

设置生成实例的 clienthome。默认为 ${buildout:directory}/var/

var

用于配置所有进入 var 的内容的基目录。默认为 ${buildout:directory}/var。

event-log

事件日志的文件名。默认为 var/log/${partname}.log

event-log-custom

事件日志的定制部分,以便能够使用除 logfile 之外的事件记录器

event-log-level

设置控制台输出的事件日志级别。级别可以是 CRITICAL、ERROR、WARN、INFO、DEBUG 或 ALL。默认为 INFO。

z2-log

Z2 访问日志的文件名。默认为 var/log/${partname}-Z2.log。

z2-log-level

设置访问日志的日志级别。级别可以是CRITICAL、ERROR、WARN、INFO、DEBUG或ALL。默认为WARN。

access-log-custom

类似于event-log-custom,是访问记录器的自定义部分,以便可以使用除了logfile之外的事件记录器。

file-storage

存储ZODB数据文件的文件名。默认为var/filestorage/Data.fs。

demo-storage

如果设置为‘on’,则启用demostorage。它与blob-storage和rel-storage不兼容。

blob-storage

存储ZODB blob数据的目录名称。

rel-storage

允许设置RelStorage代替FileStorage。

包含通过换行符分隔的设置,具有以下值

  • type:任何受支持的数据库类型(postgresql、oracle、mysql)

  • RelStorage特定的键,如cache-serverspoll-interval

  • 所有其他键都传递给数据库特定的RelStorage适配器。

示例

rel-storage =
  type oracle
  dsn (DESCRIPTION=(ADDRESS=(HOST=s01))(CONNECT_DATA=(SERVICE_NAME=d01)))
  user tarek
  password secret
zeo-client

设置为‘on’以使此实例成为ZEO客户端。在这种情况下,必须设置zeo-address选项,并且file-storage选项无效。要设置ZEO服务器,可以使用plone.recipe.zope2zeoserver配方。默认为‘off’。

shared-blob

如果将‘zeo-client’设置为‘on’,并且‘blob-storage’设置为与ZEO服务器共享的目录(由zeo.conf中的‘blob-dir’设置配置),则将‘shared-blob’设置为‘on’会导致此实例不会通过ZEO连接流式传输blob文件,而只是将文件位置信息发送到ZEO服务器。

zeo-address

设置ZEO服务器的地址。默认为8100。

zeo-client-name

设置ZEO客户端的名称。默认为部分名称。如果提供了一个false值,则不会设置zeo-client-name。

zeo-client-cache-size

设置ZEO客户端缓存的大小。默认为‘30MB’。

zeo-client-client

设置用于构造缓存文件名的持久性缓存名称。默认情况下禁用持久性缓存文件。

zeo-storage

设置ZEO存储的存储编号。默认为‘1’。

zeo-var

用于在zeo存储片段中配置zeo var文件夹。默认为$INSTANCE_HOME/var。

zeo-username

启用ZEO身份验证,并在访问ZEO服务器时使用提供的用户名。还必须指定zeo-password。

zeo-password

在启用身份验证的情况下连接到ZEO服务器时使用的密码。

zeo-realm

在与ZEO服务器进行身份验证时使用的身份验证区域。默认为‘ZEO’。

zodb-cache-size

设置ZODB缓存大小,即ZODB缓存将尝试保持的对象数量。默认为5000。

zodb-cache-size-bytes

以字节为单位设置ZODB缓存大小。需要ZODB 3.9或更高版本。

zserver-threads

指定Zope的ZServer网络服务器用于处理请求的线程数。除非你知道你在做什么,否则不应更改此值。Zope的默认值为4。

zodb-temporary-storage

如果给定,将用此参数的行替换Zope的默认临时存储定义。

environment-vars

在Zope运行周期中定义任意键值对,用作环境变量。

示例

environment-vars =
  TZ US/Eastern
  TMP /var/tmp
  DISABLE_PTS True
zope-conf-additional

向zope.conf提供附加行。确保缩进参数之后的任何行。

示例

zope-conf-additional =
  locale fr_FR
  http-realm Slipknot
relative-paths

将此设置为true,以便生成的脚本使用相对路径。您还可以在[buildout]部分中启用此功能。

no-shell

传统的运行Zope的方法是通过使用shell脚本。这些脚本随后启动具有正确设置的Python进程。通过将此选项设置为true(默认为false),这些shell脚本将不会使用。在这种情况下,配方将直接启动Python进程。

变更日志

3.6 (2009-10-11)

  • 扩展了RelStorage选项,包括keep-history和replica-conf。[hathawsh]

3.5 (2009-09-05)

  • 在脚本生成中添加了对相对路径的支持。[jvloothuis]

  • 当设置zope-conf时,配置文件将直接从该位置加载(之前创建了一个包含它的stub zope.conf)。[jvloothuis]

  • 添加了一个选项,避免使用常规的shell脚本启动Zope。这使得可以避免这些脚本中的硬编码路径。[jvloothuis]

  • 允许在RelStorage配置中使用blob-dir参数。[hathawsh]

3.4 (2009-08-12)

  • 与LP#407916的修复保持一致。[gotcha]

  • 修改了'mkzopeinstance'调用,以尊重'bin-directory'选项。[esteele]

  • 从配方中移除了zope2-egg选项和简单的启动脚本。我们假设如果未设置zope2-location,则我们有egg发行版。[hannosch]

  • davisagli-eggified-zope分支合并到主分支。[hannosch]

  • 添加了一个新的icp-address选项。这在例如使用squid作为Zope/ZEO集群前端的环境中很有用。参见http://www.zope.org/Members/htrd/icp/intro [neaj]

3.3 - 2009-07-07

  • 添加了对RelStorage选项的处理。[elro]

  • 在更新时重新安装脚本,这似乎是好的配方实践。[stefan]

3.2 - 2009-04-02

  • 添加了新的zcml-additional选项。这对于通过zcml管理非代码配置(例如ore.contentmirror的数据库连接详情)的环境很有用。[wichert]

3.1 (2009-03-15)

  • 2.9修复空格的问题导致使用debug(错误编号337740)时出现问题,因为do_debug将“-i”命令行参数传递给get_startup_cmd的方式。[smcmahon]

3.0 (2009-02-27)

  • 2.9修复实例运行命令的问题本身是错误的,并且除了Windows之外都会失败。[smcmahon]

  • zope2-egg选项更改为现在不创建任何类型的实例。mkzopeinstance脚本依赖于能够导入Zope2,而Zope2在buildout运行时是不可用的。[hannosch]

2.9 (2009-02-26)

  • 实例运行命令容易受到路径中的空格的影响,并且需要为win32添加一些额外的引号。[smcmahon]

  • 在修补之前检查windows脚本的存档。一些Linux发行版的Zope2没有这些文件。[smcmahon]

  • 在win32上通过win32serviceutil.HandleCommand()委派命令,而不是通过os.system()启动解释器。这应该可以减少处理这些命令所需的总时间。[sidnei]

  • 由于我们是以模块形式调用此命令,而不是直接以__main__形式调用,因此我们自行计算serviceClassString。否则,服务将无法正确安装。[sidnei]

2.8 (2008-12-05)

  • 为带有blob和demo存储的ZEO客户端添加了更多测试。仍然没有对“shared-blob-dir”选项的测试。[encolpe]

  • 始终使用'r'风格字符串传递脚本和配置文件名(例如,在'instance run <script>'上)。[sidnei]

  • 添加了demo-storage选项和测试。[encolpe]

  • 为blob-storage添加了第一个测试。[encolpe]

2.7 (2008-11-18)

  • 为eggified Zope2添加了zope2-egg选项和相应的简单启动脚本。[hannosch]

  • 不要因Zope2 egg checkout而失败。[hannosch]

  • 标准化os.spawnl的第一个参数。否则可能会非常恼火(可移动Python安装的dll导入失败)。[sidnei]

  • 对于servicescript的使用,使用与'do_foreground'相同的引号。修复了在包含空格的路径上安装基于buildout的Plone安装程序的问题。[sidnei]

  • 确保do_foreground将self.options.program参数保留为找到它们的样子。这使得在同一个控制会话中可以多次使用'fg'和'debug'。[klm]

2.6 (2008-10-22)

  • 在比较之前标准化、绝对化和将路径转换为小写,以避免相对文件名和Windows上不同的驱动器字母大小写引起的问题。[sidnei]

2.5 (2008-09-22)

  • 从ZODB 3.9及更高版本开始,添加了对zodb-cache-size-bytes的支持。[wichert]

2.4 (2008-07-15)

  • 引入了zope.conf变量“INSTANCEHOME”和“CLIENTHOME”。这在具有zope-conf-additional部分的集群设置中非常有用(buildout缺乏对当前部分的引用)。[jensens]

  • 使测试命令与zope.testing 3.6兼容。[hannosch]

2.3.1 (2008-06-10)

  • 没有代码更改。发布以修复2.3版本,该版本将.egg文件放在野外。[hannosch]

2.3 (2008-06-06)

  • 实际上需要传递deprecation-warnings,否则我们会得到一个KeyError。[sidnei]

  • 修复了另一个需要转义目录名以避免与空格相关问题的位置。[sidnei]

  • 如果位置不存在,不要尝试删除它。[sidnei]

2.2 (2008-06-06)

  • 添加了deprecation-warnings选项,允许开启或关闭禁用弃用警告。可以向其中提供值error,这样每个弃用警告都会被转换为异常。[sidnei]

  • 修复了复制粘贴错误,导致将runzope.bat更改为调用servicewrapper.py时失败。[sidnei]

  • 在传递给os.spawnl之前转义‘executable’参数,以便在可执行文件名包含空格时在Windows上正常工作。[sidnei]

  • 添加了http-fast-listen选项。使用此选项需要Zope >= 2.11。[stefan]

2.1 (2008-06-05)

  • 修复了Windows上的测试问题,其中需要显式关闭文件。[hannosch]

  • runzope.bat中调用servicewrapper.py,而不是设置PYTHONPATH并调用Zope2/Startup/run.py。这样我们就可以在Python代码内部设置sys.path,并避免超过环境变量最大限制。[sidnei]

  • 通过指定新的zodb-temporary-storage选项,允许使用替代的临时存储。[jensens]

  • 添加了设置环境变量的environment-vars选项。将zope-conf-additional示例代码更改为不受配方覆盖的内容。[claytron]

2.0 (2008-05-29)

  • 在启动Zope时,不要使用系统调用,而使用exec。这使得进程管理工具能够正确管理Zope进程。[wichert]

  • 添加了site-zcml选项,并添加了测试。[mustapha]

  • 添加了对ZEO身份验证的支持。请注意,目前此功能不与任何已发布的Zope或ZODB版本一起工作。有关所需补丁,请参阅http://mail.zope.org/pipermail/zope/2005-October/161951.html。[wichert]

  • 添加了FTP和WebDAV选项。[claytron]

  • 允许rel-storage为空字符串,这意味着“不使用relstorage”。这允许扩展的buildout配置再次禁用relstorage。[mj]

1.9 (2008-04-15)

  • 修复了rel-storage解析具有空格的选项。请注意,split()或split(None)已经去除了字符串。[mj]

1.8 (2008-04-05)

  • 修复了Win32问题,其中Python字符串转义在zope.conf的路径中存在(例如,d:botestpartsinstanceetczope.conf将转义b)。这在使用“run”、“debug”或“adduser”命令时出现。这修复了#211416。[smcmahon]

  • 向实例脚本添加了console命令,它与fg等效,但不隐式打开调试模式,而是尊重zope.conf设置。[hannosch]

1.7 (2008-03-31)

  • 添加了新的client-home选项,并将其默认值设置为buildout-wide var文件夹的子文件夹,子文件夹的名称与部分名称相同。[hannosch]

  • 添加了对在Zope <= 2.8下运行测试的有限支持。[hannosch]

1.6 (2008-03-27)

  • 修复了Zope 2.8的runzope脚本生成。[hannosch]

  • 清理了“./bin/instance test”选项的处理。[stefan]

  • 删除了生成器表达式,因为这些在< py2.4中不受支持,而zope 2.7/8使用的是它。[duffyd]

1.5 (2008-02-29)

  • 添加了access-log-custom选项,以便能够使用除文件记录器之外的另一个事件记录器。[tarek]

  • 修复了实例生成,使其能够在Windows路径名称中包含空格时正常工作。这关闭了#188023。[hannosch, gotti]

  • 添加了‘zeo-client-client’选项,该选项在内产生‘client <value>’。[timte, hannosch]

  • 使relstorage处理更通用,现在它支持任何RelStorage适配器,包括Oracle(之前已损坏)。[mj]

1.4 (2008-02-23)

  • 修复事件日志参数名称中的错误(从“z-log”更改为“z2-log”),以符合文档要求。这解决了#190943。[kdeldycke]

  • 如果不存在,则创建pid和锁文件文件夹。[kdeldycke]

  • 移除硬编码的日志级别,并使用event_log_level参数动态设置它。这解决了#190994。[kdeldycke]

  • 添加了一个测试环境,使用zc.buildout.testing,并添加了一个尝试该食谱的doctest。[tarek]

  • 添加了event-log-custom选项。[tarek]

  • 添加了zope-conf-additional选项的示例。这解决了#185539。[klm, hannosch]

  • 添加了rel-storage选项,以便将Zope连接到RelStorage(postgresql/oracle)数据库而不是FileStorage数据库。[tarek]

1.3

  • 对于recipe-specified 'extra-paths'行中的每个条目,向实例和Zope客户端zope.conf文件添加一个'path'行。[klm]

1.2

  • 添加了布尔shared-blob选项,默认为no。如果所有zeo-clientblob-storageshared-blob选项都设置,则实例将假设由blob-storage设置的blob目录与服务器共享,而不是通过ZEO连接流式传输'blob'文件。[rochael]

  • ctl.do_foreground(由fg命令行参数调用)在调试模式下启动Zope更改为模拟zopectl fg的行为。这需要一点特殊的WIN32代码,以确保它可以在*nix和Windows上正常工作。[smcmahon]

  • 添加了var选项,用于配置所有将进入var的基础目录。[hannosch]

  • 添加了zeo-var选项,用于在zeo存储片段中配置zeo var文件夹。[hannosch]

  • 合并了rochael-blobsupport分支。为ZEO客户端添加了对ZODB 3.8 blob存储配置的支持。这参考了https://bugs.launchpad.net/collective.buildout/+bug/179113。[rochael, hannosch]

  • 添加了zeo-client-name选项。默认值为ZEO客户端的名称。[hannosch]

1.1

  • 进行了小的文档更新。添加了到bugtracker的链接。[hannosch]

  • 将zope.conf选项“default-zpublisher-encoding”的默认值从Zope的默认值“iso-8859-15”更改为“utf-8”。

  • 将PID文件的位置默认设置为“${buildout:directory}/var/${name}.pid”。将PID文件保留在$INSTANCE_HOME中,当buildout重建部分时会出现问题。[nouri, mustapha]

1.0

  • 将‘zodb_cache_size’的默认值增加到5000,这在当今更有可能是更好的默认值。[hannosch]

  • 添加了对‘extra-paths’的支持,类似于‘zc.recipe.egg’;这对于使用没有提供eggs的常规python包很有用,即使用‘plone.recipe.distros’。[witsch]

  • 添加了zeo-storage选项(合并分支ree-add-zeo-storage-option)。[ree]

  • 避免在buildout中指定的eggs中重复条目:在安装脚本('bin/instance')时,工作集('ws')再次传递,但不会也添加到'extra_paths'。[witsch]

  • 在Zope启动脚本中修补‘PYTHONPATH’时,应先插入所有附加路径(到eggs),然后再插入‘SOFTWARE_HOME’,否则(较新的)egg版本的Zope标准分发中的组件(即位于‘lib/python’中的东西)无法使用。[witsch]

  • 将抑制弃用警告的选项更改为“–nowarn”或“–nowarning”,以与“zopectl test”保持一致。[witsch]

  • 添加了“-w”选项,以允许测试运行器抑制弃用警告,这样更容易发现失败的测试……[witsch]

  • 更新了Zope 2.7(及以下)兼容性的导入。[duffyd]

  • 将-r51966:52659 claytron-zopeconfoptions分支合并到主分支。[claytron]

  • 在保持结果缩进正确的同时使配置片段更美观。[witsch]

0.9

  • 添加了对zodb 3.8的“<blobstorage>”指令的支持。[witsch]

  • 在调用zope.testing.testrunner.run之前添加了脚本名称参数。zope.testing.testrunner:1772,get_options从参数列表中删除了第一个参数,期望在那里有一个脚本名称。这导致“bin/instance test”行为不正常。[rossp]

0.8

  • 如果存在,则使用bin,否则回退到工具。这使得可以使用从tarball安装的Zope版本,而无需就地编译。[rossp]

0.7

  • 发现了奇怪环境变量的问题。[hannosch]

  • 修复了文档中的错误,缓存大小现在也被非ZEO实例所尊重。[hannosch]

0.6

  • J1m 实际上阅读了文档 ;)[hannosch]

  • 尝试修复测试运行器找到的有时数量惊人的测试。[hannosch]

0.5

  • 添加了一个设置有效用户的选项。[optilude]

0.4

  • 生成一个 bin/repozo 脚本,用于使用 repozo.py 进行备份(并为该操作设置适当的 pythonpath)。[optilude]

  • 正确记录选项,并添加了明确指定 zope.conf 文件的能力,而不是从模板生成。[optilude]

0.3

  • 最终找到了为 Zope Windows 服务提供正确环境的方法。我们需要一个新的包装脚本,该脚本设置 PYTHONPATH。[hannosch]

  • 使能够通过 [instance] 部分的 control-script 选项配置 zopectl 脚本名称。[wichert]

0.2

  • 扩展对 zcml slugs 的支持,包括 Zope 2.9。[dunny]

  • 添加了创建 ZEO 客户端的支持。[regebro]

0.1

  • 初始实现。[hannosch]

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。

源分布

isotoma.recipe.zope2instance-0.0.6.tar.gz (37.0 kB 查看散列)

上传时间

由以下提供支持