Tôi đang cố gắng đưa một dự án Python vào một tarball bằng cách sử dụng các công cụ thiết lập. Vấn đề là setuptools không xuất hiện giống như cách mà cây nguồn ban đầu được thiết lập (không phải bởi tôi, tôi phải thêm). Mọi thứ mà tôi thực sự muốn phân phối đều nằm trong thư mục cấp cao nhất, chứ không phải trong thư mục con như tài liệu setuptools nói về.Loại trừ thư mục cấp cao nhất khỏi gói cài đặt
Cây có thư mục, tests
, mà tôi không muốn có trong gói phát hành. Tuy nhiên, sử dụng exclude_package_data
dường như không thực sự làm bất kỳ loại trừ nào và tôi muốn tìm ra những gì tôi đã làm sai.
setup.py
của tôi trông như thế này, một phần có liên quan:
setup(
name="project",
packages=[''],
include_package_data=True,
exclude_package_data={'': ['tests']},
test_suite='nose.collector',
)
Rất kỳ lạ, bằng cách sử dụng 'exclude =()' là không đủ đối với tôi. Theo http://stackoverflow.com/a/11669299/472876, tôi đã phải sử dụng 'các bài kiểm tra loại trừ đệ quy * 'trong' MANIFEST của tôi.in' để thành công. – HeyWatchThis