I'm trying to put a Python project into a tarball using setuptools. The problem is that setuptools doesn't appear to like the way that the source tree was originally setup (not by me, I must add). Everything that I actually want to distribute is in the top-level directory, rather than in a subdirectory like the setuptools docs talk about.
The tree has a directory, tests, that I don't want to have in the released package. However, using exclude_package_data doesn't seem to actually do any excluding, and I'd like to work out what I've done wrong.
My setup.py looks like this, in relevant part:
setup(
name="project",
packages=[''],
include_package_data=True,
exclude_package_data={'': ['tests']},
test_suite='nose.collector',
)
-
Ug, setuptools makes this really tricky :(
I don't know if this is what you want, but one project I work on uses a combination of two things:
from setuptools import setup, find_packages ... packages = find_packages(exclude=['tests']), data_files = os.walk(path_to_files), -
For similar purpose, my collegue wrote setuptools-dummy package: http://github.com/ella/setuptools-dummy/tree/master
Take a look at setuptools_dummy, modify excludes to your needs and it should work. If not, open an issue ;)
-
The next setup should work:
setup( name="project", packages=[''], include_package_data=True, exclude_package_data={'': ['tests/*']}, test_suite='nose.collector', )
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.