[Grok-dev] Re: timte-json branch
faassen at startifact.com
Sat Mar 24 22:09:10 EDT 2007
Darryl Cousins wrote:
> Could I pick your brains further on the subject?
> 1. Is it ok then to add an svn:externals pointing to grok repository
> from my project repos so it checks out grok into my project directory
> each and every time?
Yes. This is a regular pattern with buildouts. You list 'grok' in the
'develop' line in the [buildout] section, so buildout can recognize this
as an egg.
> 2. Related but a little different. I have used some z3c pakages in my
> project. I created a recipe to check out these packages into
> parts/instance/lib/python. Could/should this be done differently?
> Possibly by:
> For example adding svn:externals to these packages so they check out
> into my project/src directory along with my code? And therefore are
> built as part of my code.
Yes, it can be done differently. If these are registered on the
cheeseshop, just list them as a dependency in your setup.py. If they are
stored in some other location (zope.org has a few, though I can't
remember the name), you can add this as an alternate repository to look
for eggs too. (I forget the name too)
If they are not in the cheeseshop, just create an svn:external to them
in the top-level project directory and list them in the 'develop'
section of your buildout.cfg.
If you want their ZCML to be registered, you can change buildout.cfg in
the 'zcml' section of your instances to have it included.
Then run: $ bin/buildout -N
The '-N' option avoids network access when you already have an egg, and
typically a buildout runs much faster.
Please note that running buildout can remove and reinstall your
instance, including any changes you made there, including etc/zope.conf.
Hopefully we can move that file off into some other directory eventually.
Someone should take notes on all this and write this into a coherent
tutorial for zc.buildout. I imagine it can be pretty use-case driven, or
even FAQ style ("How do I..?"). Volunteers to start such a document are
For eager website volunteers that may be around you, making a nice web
presence for zc.buildout (buildout.zope.org?) would be a fun project.
Right now there's lots of buildout documentation on the cheeseshop
(generated from the doctests): cheeseshop.python.org/py/zc.buildout
There's also this document that Jim wrote on buildout:
Collecting this stuff in one place, giving it a bit of a layout, would
be work that has quick payoffs. That said, you do need to provide Jim
with an easy way to update the docs to the latest versions - he has
setup.py do that for him automatically for the cheeseshop upload, so
you'll have to beat that. :)
More information about the Grok-dev