I have a project called Foo/ that has buildout.cfg and setup.py. Now there is another project called Bar/ .. which too has buildout.cfg and setup.py. Since Bar/ depends on various Python modules, it has install_requires=['lxml', 'SQLAlchemy']
in its setup.py. Foo/ depends on Bar/.
But Bar/ does not have a release yet. How do I include Bar/ in Foo's buildout so that I can import Bar's modules, lxml and SQLAlchemy?
Assume that Bar/ is using mercurial as its revision control system.
My attempt: Buildout mercurial recipe does not do much. It only clones the repository, but does not automatically get the eggs for install_requires in Bar/setup.py and add Bar/ itself to sys.path.
Actual example: Here's what my buildout.cfg looks like (Bar == mercurialrecipe package):
[buildout]
parts = ... pyrtm ...
develop = . parts/pyrtm
eggs = pyrtm
[pyrtm]
recipe = mercurialrecipe
repository = http://bitbucket.org/srid/pyrtm
...
This does not work because sys.path does not contain the path to locally cloned mercurialrecipe (in parts/mr
), and the dependencies (from parts/mr/setup.py
) are not installed.