[Distutils] buildouts upgrades in production

Jim Fulton jim at zope.com
Thu Dec 13 00:52:06 CET 2007

On Dec 11, 2007, at 12:11 PM, Tarek Ziadé wrote:
> We are happily using zc.buildout to deploy our Python softwares  
> (mainly zope) in production.


> The offline mode is very helpfull to create a media with a prepared  
> buildout to deploy the thing on a server that has no web access  
> (this is most of the time the case i guess)

Are you aware of zc.sourcerelease?


This automates creating buildout-based self-contained source releases  
that are installed without network access.  These source releases can  
also be used as the basis for system packaging. We use them with a  
trivial spec file to create RPMs.

> Now I am working on the best ways to prepare upgrades for the  
> production and I try to find a way to avoid recreating a big tarball  
> again just for a few changes.

IMO, the benefit doesn't justify the extra complexity.  IMO,  
deployments should involve as little thought and thus risk as  
possible.  Our RPMs typically install in a few seconds, which is fast  
enough for me. :)

> My guess is that a snapshot of the download-cache and eggs directory  
> is enough, so a diff can be made to "upgrade" a production server  
> with a tarball of the two directories and the new .cfg
> But I was wondering if someone had similar experiences already, and  
> maybe a simple, better way ?

There are ways to use a download cache to speed creation of a source  
release.  If you're interested, I could expand on this.


Jim Fulton
Zope Corporation

More information about the Distutils-SIG mailing list