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