I just release a first version of my instance manager that I started with two days ago (update 15 May: new .tgz, it lacked the skeleton directory). I'm used to having scripts that extract all the needed products for a zope instance, that restart zope and that call a script that quickinstalls the products. Both for development and on the customer server .
The developer-side scripts (bash) improved with every product, but it was hard to merge the improvements back into previous projects. And it was a lot of work to set up all the files for a new project. And it didn't fit everyone's location preferences.
So I made a seperate python program that does all this in a much more configurable way. The old scripts only allowed .tgz files as sources, the new "instancemanager" also allows symlinked sources (like for instance a plone 2.5 svn bundle checkout). Some of the things it does:
Products/. They can come from .tgz (also bundles) and from symlinked locations (also bundles). This assumes that you have your svn checkouts somewhere on your filesystem (
~/svn/*by default) and not inside the Products directory. Might be something for a later version.
I'm using it myself already for my projects. What makes it handy is that I only need to edit one config file to get a new instance with just the right software. Handy for testing ploneformmailer in multiple zope/plone combinations, for instance!
Feedback welcome, especially also on setting it up. It has a distutils
setup.py, so that's handy. The README.txt is reasonably OK. Running it once gives you a config directory
.instancemanager in your homedir with a
userdefaults.py full of customisable locations - and with good documentation about every one of them.
Have you looked at Debian/Ubuntu's dzhandle? Wouldn't that be something to try? If not, how does your tool compare?
My name is Reinout van Rees and I work a lot with Python (programming language) and Django (website framework). I live in The Netherlands and I'm happily married to Annie van Rees-Kooiman.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):