On 15 May 2013, at 10:57, Harry Percival wrote:

> Dear UK Python chums,
> 
> some of you probably know I'm writing a book about TDD for O'Reilly.  I'm 
> looking for some help with the (first) chapter on deployment.
> 
> http://www.obeythetestinggoat.com/what-to-say-about-deployment.html
> 
> What do you use for deployment?  Do you have any kind of automated scripts? 
> How do you manage virtualenvs, the database, apache/uwsgi config... What do 
> you think might work as a sort of "best practice lite" for a simple site for 
> beginners?  (django, sqlite database, static files)

We use zc.buildout for all our deployment stuff, as it can handle not just 
python things, but also other stuff too (e.g. setting up a Solr server, or 
varnish proxy, etc) and allows multiple buildout files with inheritances 
between them. ie. we have a base.cfg, a dev.cfg, a staging.cfg and a live.cfg, 
the latter three build upon the first. Live might set up a cluster of Zope 
instances, an haproxy instance and varnish. dev.cfg might set up debuggers and 
extra reporting etc.

To take this further, the Plone community does a lot of CI testing and buildout 
helps with this as you could have a travis.cfg which might set up the 
environment for Travis.

A good set of slides on this:
http://www.slideshare.net/zupo/travis-ci-fun-and-easy-ci-for-your-plone-packages

Or, for instance, we use Jenkins in-house and one of our projects, a Pyramid 
project has a specific buildout file for use with jenkins which uses sqllite 
instead of Postgres, and sets up some default content for the tests to run 
against.

-Matt

-- 
Matt Hamilton, Technical Director
Netsight Internet Solutions Limited
http://www.netsight.co.uk/matth
Tel: 0117 90 90 90 1 Ext. 15

Registered in England No. 3892180
Registered office: 40 Berkeley Square, Clifton, Bristol, BS8 1HU

_______________________________________________
python-uk mailing list
python-uk@python.org
http://mail.python.org/mailman/listinfo/python-uk

Reply via email to