在buildout配置中动态添加值

Jag*_*N M 6 plone buildout

我正在寻找通过评估某些标准在zc.buildout配置中填充值.例如,

如果fqdn以'.net'结尾,那么hostname = this_pkg_server else hostname = that_pkg_server

我期待建立特定于站点的配置.我可以用宏来评估fqdn,但是如何在配置中填充该值?

谢谢

ale*_*isa 7

最简单的答案是使用精彩mr.scripty.

PyPI上的页面:

未经测试的例子:

[buildout]
parts =
    hostname 

[hostname]
recipe=mr.scripty
pkg_server=
    ... import os
    ... if os.environ.get('HOSTNAME', '').endswith('.net'):
    ...     return 'this_pkg_server'
    ... return 'that_pkg_server'
Run Code Online (Sandbox Code Playgroud)

然后,您可以在整个构建中使用返回值作为${hostname:pkg_server}.

有一个更复杂的解决方案,即编写自己的构建配方.这并不容易,但努力可能不值得.