MANIFEST.in将文件安装到site-packages / VERSION而不是site-packages / mypackage / VERSION

时间:2017-07-14 18:20:45

标签: python setuptools python-3.6

我正在尝试在我安装的python包的根目录中获取文件VERSION,以便我可以在安装后读取该文件,但是使用MANIFEST.in,文件放在顶部 - 等级/usr/lib/python3.6/site-packages而非/usr/lib/python3.6/site-packages/mypackage内。

我正在尝试这样做,以便我可以在运行时显示包版本,也可以在repo中轻松使用它。

目录结构:

setup.py
MANIFEST.in
VERSION
mypackage/
  - __init__.py
  - __main__.py
  - foo.py

MANIFEST.in

include VERSION

setup.py

#!/usr/bin/env python3

from setuptools import setup, find_packages

with open("VERSION", "r") as versionFile:
  version = versionFile.read().strip()

setup(
  name="mypackage",
  version=version,
  packages=find_packages(),
  include_package_data=True)

mypackage/__main__.py

...
  verFile = pkg_resources.resource_string(__name__, "VERSION")
  with open(verFile, "r") as fin:
    version = str(fin.read().strip())
  print(version)
...

如何在程序包目录中安装VERSION文件?

0 个答案:

没有答案