Установка файлов данных в пакеты сайтов с помощью setup.py - PullRequest
13 голосов
/ 13 марта 2012

У меня есть пакет Python со стандартным установщиком setup.py, но я не могу на протяжении всей жизни заставить его установить некоторые заранее определенные файлы конфигурации в пакеты site-где-то ... Моя функция setup () называется так:

setup(
  name='Hydrant',
  version=version,
  description=long_description,
  author='Scott Frazer',
  author_email='scott.d.frazer@gmail.com',
  packages=['hydrant'],
  package_data={'hydrant': ['sql/*.sql', 'hydrant.conf', 'hydrant.deploy']},
  data_files=[('config', ['hydrant/hydrant.conf'])],
  install_requires=[
    "xtermcolor>=1.0.3",
    "pyyaml",
    "pymysql",
    "jprops"
  ],
  entry_points={
    'console_scripts': [
      'hydrant = hydrant.Main:Cli'
    ]
  },
  test_suite='hydrant.test',
  license = "MIT",
)

Я экспериментировал с package_data и data_files, но они просто, кажется, ничего не делают.Я устанавливаю в виртуальную среду с помощью командной строки:

$ python setup.py install

Любое понимание будет с благодарностью!

1 Ответ

1 голос
/ 09 апреля 2012

Попробуйте добавить файл MANIFEST.in в свой модуль. Althought AFAIK используется только для добавления данных в сгенерированные пакеты (яйца или файлы дистрибутива tar.gz)
Посмотрите на этот StackOverflow связанный вопрос / ответ .

Другие программисты заставили его работать, переключаясь на distutils, но я бы не стал его рекомендовать, поскольку он не рекомендуется распространять.
Посмотрите на этот другой вопрос / ответ, связанный со StackOverflow

...