[Zope-dev] Zope 2.12: mkzopeinstance, runzope and zopectl - a small proposal

yuppie y.2009 at wcm-solutions.de
Mon Aug 31 10:03:49 EDT 2009


Hi Chris!


Chris Withers wrote:
> yuppie wrote:
>>> yuppie wrote:
>>>> Currently buildout is just used to set up the software. 
>>> Wrong. The buildout I posted, which uses no fancy recipes, sets up an 
>>> instance. The egg cache, as such, is "the software"...
>> You ripped my sentence out of context. We were talking about Zope 2.12. 
>> And Zope 2.12 currently doesn't use buildout for setting up instances.
> 
> Sure it does. I've published the recipe. There's no more needed than that...

Your recipe is not published as part of Zope 2.12. And it doesn't work 
on Windows.

[...]
>> These 
>> buildouts are more 'software' than 'instance'. Maybe with that scenario 
>> my assertions make more sense to you?
> 
> Nope. As I said, The "Zope 2.12" software will never be in such a 
> buildout, just used by it. As such, the "egg cache" wherever and however 
> you have it becomes the "Zope 2.12" software... Anything in the buildout 
> is "software" that is local to that instance, like Products or External 
> Methods used to be in days of old...

Are you ignoring the fact that buildouts with several dev eggs exist? Or 
do you define all dev eggs as local to the instance?

For development I regularly use one dev buildout with several different 
test instances. The dev eggs are local to my dev buildout, but not local 
to the test instances.

>>> I meant I nicer way of passing in the location of zope.conf...
>> If you create the instance in the same step your solution doesn't look 
>> that bad. 
> 
> I don't know what you mean by this...

You propose to create the entry point and the instance in the same step. 
And you have these lines in your buildout.cfg:

   initialization =
      import sys
      sys.argv[1:1] = ['-C','${buildout:directory}/etc/zope.conf']

Why are you not happy with that solution?

>>>>>> we can make it unnecessary to specify the interpreter. 
>>>>> When runzope and zopectl are built by buildout, this is already the 
>>>>> case... One python is used for both...
>>>> No. Currently you also need 'zopepy' (or 'py' in your case). 
>>> They're all the same python...
>> Exactly. But if we always use the same Python, why do we have to specify 
>> it in several places?
> 
> Huh? You don't...

Your buildout.cfg creates an interpreter entry point 'py'. Your 
zope.conf.in specifies "python $INSTANCE/bin/py".

But the zopectl entry point already contains all the information it 
needs. runzope doesn't depend on 'py'. Why does zopectl have to look up 
the interpreter path in zope.conf und use 'py'?


Cheers,

	Yuppie



More information about the Zope-Dev mailing list