yoda wrote: > I realize I'm losing so much time I could spend more productively. I'd > therefore like to know the different approaches you guys employ to > deploy builds from your staging servers (or laptops:) to the production > server in an automated repeatable safe manner.
> How do you automate the process? We have a system called "the buildout" that checks out a project's code, downloads and builds any dependencies, and configures a working system. (http://svn.zope.org/Sandbox/zc/buildout/trunk/) We use that for setting up new development environments (each developer generally has several builds of any project at one time). > What tools do you use and how? We also have a BuildBot setup that runs a buildout and then runs the tests and emails a list if the tests fail (http://buildbot.sf.net). You can see an example of our "public" buildbot here: http://buildbot.zope.org. > What documentation is available for the various tools? We just publicly released the buildout code a couple of weeks ago, and it seriously needs docs and tests. BuildBot doesn't have great docs, but it's configured via Python, so it's not too bad. > What is the best, easiest, most automated, method that provides robust > versioning and easy rollback? When we deploy via buildout (as opposed to by using an installer or a simple archive) we generally either just tell the buildout to update itself, or if we want the ability to "roll back" make a new buildout and switch to it (therefore we can switch back to the previous build). We don't do it this way, but because the buildout for a particular project is itself versioned, you could just "svn up" to the previous version and rebuild it and you'd be back to where you started. -- Benji York -- http://mail.python.org/mailman/listinfo/python-list