简体   繁体   中英

How to pull a python package from a repo using buildout?

I have a pre-rolled bootstrap script that creates a buildout.cfg for my wsgi-based framework. Buildout is run with this initially to create the necessary paste directory structure. I then pull my code from the VCS repo into the src directory, and a buildout.cfg specific to whatever env I'm deploying to along with a few other .py static data files. Then I run buildout again.

Running buildout twice is pretty wasteful from my pov. Is there a way to do an export from subversion from within buildout into my project source dir and also arbitrary files?

I'd use mr.developer to grab a local checkout:

[buildout]
extensions = mr.developer
auto-checkout = yourpackage

[sources]
yourpackage = svn http://url.to/repository

Now mr.developer will check out yourpackage as part of the buildout run, into src/ , run it's setup.py to make it a development egg, and tell buildout it's available as such. Now buildout will use that local copy to satisfy any yourpackage requirement.

If your svn package is not a python egg, simply add egg=false to it's sources entry, and mr.developer won't look for a setup.py to run.

Alternatively, you can just use iw.recipe.cmd to simply run the svn command:

[yourpackage]
recipe = iw.recipe.cmd
cmds = 
   svn export http://url.to/repository

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM