[Zope-dev] env var support for zc.buildout

Christian Theune ct at gocept.com
Thu Apr 8 08:24:53 EDT 2010


Hi,

On 04/08/2010 12:59 PM, Florian Friesdorf wrote:
> On Thu, Apr 08, 2010 at 08:56:18AM +0200, Christian Theune wrote:
>> On 04/08/2010 04:27 AM, Florian Friesdorf wrote:
>>> environment variable support for zc.buildout, including extends!
>>>
>>> https://bugs.launchpad.net/zc.buildout/+bug/557769
>>>
>>> works for me so far

Actually the env recipe was more of a hack to get going and then we 
forgot to propose getting it into buildout.

OTOH handling it as a recipe allows for some other nice tricks, e.g. 
overriding by extensions.

Maybe a specialised part-name, like versions would be helpful so that 
buildout could pre-populate that part during initialisation and then 
allow configurations to override individual values.

On your specific patch: you sure about that direct regex match for the 
expanding variables in the extends option?

I wonder what Jim thinks about the topic.

>> Uhm ... interesting. I never noticed our recipe not to work with
>> extends. Can you give me an example?
>
> actually, i just assumed from looking at buildout.py - extends is
> processed before the whole Buildout ist up. As far as I understand your
> recipe is not even loaded when buildout would need that variable lookup.
>
> But, I saw you recipe after I implemented and never tried it...

I just played with that scenario. Something that doesn't work with our 
recipe:

a.cfg:
[buildout]
parts = x
 

[x]
recipe = zc.recipe.egg
eggs = zope.interface
foo = ${env:bar}

buildout.cfg:
[buildout]
extends = a.cfg
 

[env]
recipe = gocept.recipe.env

-- 
Christian Theune · ct at gocept.com
gocept gmbh & co. kg · forsterstraße 29 · 06112 halle (saale) · germany
http://gocept.com · tel +49 345 1229889 0 · fax +49 345 1229889 1
Zope and Plone consulting and development



More information about the Zope-Dev mailing list