如何为Buildout创建脚本?

Naf*_*Kay 2 buildout

我正在尝试在Buildout中构建一个命令行项目,我不确定如何定义要构建到bin目录的脚本.我记得在某个地方看到过这种能力,但我不记得哪里和文件不是那么好:(

jen*_*ens 6

egg setup.py是定义脚本的地方.鉴于包名为mypackage,其中包含main.py和run函数 - 它看起来像这样:

setup(
  ...    
  entry_points={
    'console_scripts': ['myscriptname = mypackage.main:run'],
  },
  ...
)
Run Code Online (Sandbox Code Playgroud)

在buildout中,你只需使用zc.recipe.egg:script recipe:

[buildout]
parts = myscripts

[myscript]
recipe = zc.recipe.egg:script
eggs = mypackage
Run Code Online (Sandbox Code Playgroud)

在buildout运行之后,可执行文件./bin/myscriptname.