Handy for development: production + preview zope instanceΒΆ

Tags: plone

We have two zope instances, ~/production and ~/preview. There's an update-preview.sh and update-production.sh script that:

  • creates a fresh Products/ directory (fresh plone products from *.tgz files, fresh custom product svn checkout)
  • restarts the zope server
  • calls a script inside zope which calls the quickinstaller to reinstall our custom products.

The difference between update-preview and update-production is that update-preview copies over the production Data.fs. This way you can always test your current development with the real data. This realistic test is just an ssh to the server and a call to the update-preview.sh script away.

We're using this approach at our new customer Philips (an internal, mostly PloneHelpCenter based, website). We're only two weeks into the project, but we've already got this production/preview approach in place. The customer is already adding content and site structure into the real production site. At the same time, we can test our additions with the real data in the preview system. If we need to migrate some content or so, this gives us an ideal way of ensuring that it works with the current data.

Some additional notes:

  • Copying over the Data.fs is done with the repozo.py script in the zope/bin directory.
  • The update-production.sh script of course makes a backup before potentially messing up the production website :-)
  • Production is set up as a zeoserver/zeoclient combo, but that is not relevant to this issue.
(Old imported comments)
"Scripts, updated" by reinout on 2006-07-18 20:25:02
http://vanrees.org/weblog/archive/2006/07/18/instancemanager-now-also-handy-for-server-setups has a much better approach :-)
"Scripts available" by Reinout van Rees on 2006-05-01 13:45:12
Maurits cleaned up my original scripts and placed them (customised for our XM product) in https://svn.zestsoftware.nl/svn/zest/eXtremeManagement/integration/trunk/ . The README is pretty clear, there's lots in there you don't need to do for not-too-elaborate projects.

Basically: edit the config parameters at the top of serverinfo.sh and add the provided .py script to the zope root of a sample data.fs. Feedback welcome :-)
"Is that code available" by Matt on 2006-05-01 13:27:33

Are the update-* shell scripts availale somewhere?

vanrees.org logo

About me

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.

Weblog feeds

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):