Jeff McNeil wrote:
That's not all that obvious to someone new to the Zope system. Most of the documentation I've found is geared towards the 2.x branch. As Zope 3 and Zope 2 are different animals, I wouldn't think that the deployment steps and recommendations would be all that similar.
With buildout, they can be similar, at least superficially.
I really like what I've seen thus far, it's just been difficult at times as it feels like I'm fighting with documentation.
So I'm assuming I'll just need to build up a Zeo server instance with zc.zodbrecipes and update my corresponding buildout.cfg for the Zope instances?
Yep, you can do that.
If Buildout is the preferred deployment tool, then my redistributable is a sandbox tarball or an RPM containing the skeleton files needed to bootstrap a buildout run on the target hosts?
Yes.
Maybe I'll dump the whole process on a blog somewhere as I step through it.
That'd be cool!
I do have another question. The project we're working on is plug-in based. Within the old system, eggs are loaded dynamically using setuptools pkg_resources and we define certain entry points for capability registration. Eggs are added to a directory and a config entry is made such that we can load the proper version of each plug-in. Is there an upfront way to reproduce that functionality without needing to update setup.py and rerun buildout every time we want to push a new plug-in or update an existing?
Well, you could just do the exact same thing that you did in your old application, I suppose.
I'd love to be able to just drop an egg on the file system and tell Zope "Here, go load that one now" via configuration alone.
You could also write your own ZCML directive (+ a handler) that does that. Then you'd only ever have to change your application's site.zcml to load a new plugin.
My apologies if some of this is obvious. As I said, I'm really just tackling Zope for the first time.
Don't worry, your questions are valid. We haven't actually done a very good job of documenting things on the website.