Friday, 15 April 2011

python - Django Dev/Prod Deployment using Mercurial -



python - Django Dev/Prod Deployment using Mercurial -

i've puzzle of development , production django setup can't figure out way deploy in simple way. here's setup:

/srv/www/projectprod contains production code, served @ www.domain.com /srv/www/projectbeta contains development code, served @ www.dev.domain.com prod , dev split 2 different virtualenvs, isolate various python packages, in case.

what want here create bunch of changes in dev, force mercurial server, , re-pull changes in production when stable. there few things making complicated:

wsgi.py contains activate_this.py phone call virtualenv, path scoped either prod or dev, needs edited before deployment. manage.py has shebang @ top define right python path virtualenv. (this #!/srv/ve/.virtualenvs/project-1.2/bin/python i'm wondering if can remove simplify things) settings.py contains paths templates, staticfiles, media root, etc. stored under /srv/www/project[prod|dev]/*

i've looked fabric, don't see in re-write these files me prior doing mercurial push/pull.

does have tips simplifying this, or way automate deployment?

two branches different environment (with env-specific changes in each, - additional merge before deploy)

or

mq extension, "clean" code in changesets, mq-patch every environment on top of single branch (and accuracy apply|unapply of patches)

python django mercurial fabric

No comments:

Post a Comment