On Tue, Jun 12, 2012 at 12:24:33PM -0700, Chris Jerdonek wrote:
Hi, is there a recommended way of building and deploying a private Python application from many loosely coupled internal packages or modules as opposed to a single large package?
I suspect there's more than one. ;)
Should this be done with a private PyPI server with each module/package having its own setup.py, or is zc.buildout (or some other tool) the more appropriate solution here?
I generally don't bother setting up private PyPI servers -- dropping the .tar.gz files of private package sdists in a directory and exporting it with Apache (with password protection if you wish) works just fine. There's generally a single version control checkout that contains the buildout configuration (with find-links = https://private-package-page-url) and the main app. I also use buildout-versions to ensure all the dependencies have version pins to avoid unpleasant surprises on deployments. Sometimes unpleasant surprises still happen, when an upstream package sdist disappears off the net and I have to go hunt it down from someone's buildout cache and drop it into the same private package page. Marius Gedminas -- What goes up, must come down. Ask any system administrator.