Как добавить скрипт в проект сборки? - PullRequest
2 голосов
/ 11 сентября 2010

У меня есть setup.py в проекте сборки:

from distutils.core import setup
setup(name='',
  version='1.0',
  author='Denis Kolodin',
  author_email='...',
  url='...',
  scripts = ['scripts/myscript.py'], # The script I want to add to 'bin/' dir
)

Почему buildout не добавляет этот скрипт в 'bin /'? Могу ли я разработать сценарии (не яйца) с помощью buildout?

Мой buildout.cfg :

[buildout]
develop = .
parts = python scripts

[python]
recipe = zc.recipe.egg
interpreter = python
eggs = marketwizard > 0.2.0
       jinja2

[scripts]
recipe = z3c.recipe.scripts

Ответы [ 2 ]

4 голосов
/ 12 сентября 2010

На данный момент это ограничение компоновки: он не понимает "script =" из вашего setup.py. Он действительно понимает так называемую "console_scripts =" так называемую "точку входа" из setuptools. Google для этого или посмотрите на существующий проект, который имеет его.

У меня есть исправление для buildout, чтобы оно поддерживало "scripts =", но это еще не было принято для включения.

0 голосов
/ 17 мая 2017

Я просто делаю реальный пример.

Пример setup.py

setup(name='',
  version='1.0',
  author='Denis Kolodin',
  author_email='...',
  url='...',
  entry_points={
    "console_scripts": [
        'myscript = scripts.myscript:main_function',
    ]
  }
)

Пример buildout.cfg

[buildout]
develop = .
parts = python scripts

[python]
recipe = zc.recipe.egg
interpreter = python
eggs = marketwizard > 0.2.0
   jinja2

[scripts]
recipe = zc.recipe.egg:scripts
# to be available in your script
eggs = ${python:eggs}
scripts = myscript

Примечание: main_function это функцияимя (может любое имя) из вашего скриптового модуля.

...