因此,我正在使用PasteScript的粘贴程序,并且正在尝试自动创建鸡蛋。我的第一步是获取Python鸡蛋的模板。我注意到PasteScript的粘贴程序内置了一个粘贴程序,因此我一直在从命令行创建模板:

$paster create -t basic_package


但是,这以一系列提示(项目名称,作者,版本等)向我提出问题。调用PasteScript时是否可以使用配置文件或将参数直接传递给命令行?

我的目标是拥有一个可以运行以生成鸡蛋模板的命令。

谢谢您的帮助!

最佳答案

我最近自己发现了这个。 “ paster create”采用--config命令行参数。这可以是包含要使用的变量的文件。

例如:

我将从名为bobsetup.cfg的配置中创建一个名为bob的软件包。配置文件将包含:

[pastescript]
created = 2011-09-07T14:47:27
egg_plugins__eval__ = []
plus = +
egg = bob
dot = .
description = Bob's magic code
license_name =
zip_safe__eval__ = False
keywords = Python
long_description = Bob's super useful code base
author = Fred Sprocket
author_email = [email protected]
url = http://example.com
version = 1.0.0


然后,我可以如下使用它:

$ paster create -t basic_package --config=bobsetup.cfg bob

Selected and implied templates:
  PasteScript#basic_package  A basic setuptools-enabled package

Variables:
  author:            Fred Sprocket
  author_email:      [email protected]
  created:           2011-09-07T14:47:27
  description:       Bob's magic code
  dot:               .
  egg:               bob
  egg_plugins:       []
  keywords:          Python
  license_name:
  long_description:  Bob's super useful code base
  package:           bob
  plus:              +
  project:           bob
  url:               http://example.com
  version:           1.0
  zip_safe:          False
Creating template basic_package
Creating directory ./bob
  Recursing into +package+
    Creating ./bob/bob/
    Copying __init__.py to ./bob/bob/__init__.py
  Copying setup.cfg to ./bob/setup.cfg
  Copying setup.py_tmpl to ./bob/setup.py
Running /Users/omul/.virtualenvs/im.analytics/bin/python setup.py egg_info

$


如果我检查bob / setup.py,可以看到已经设置了变量。猫setup.py:

from setuptools import setup, find_packages
import sys, os

version = '1.0'

setup(name='bob',
      version=version,
      description="Bob's magic code",
      long_description="""\
Bob's super useful code base""",
      classifiers=[], # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers
      keywords='Python',
      author='Fred Sprocket',
      author_email='[email protected]',
      url='http://example.com',
      license='',
      packages=find_packages(exclude=['ez_setup', 'examples', 'tests']),
      include_package_data=True,
      zip_safe=False,
      install_requires=[
          # -*- Extra requirements: -*-
      ],
      entry_points="""
      # -*- Entry points: -*-
      """,
      )

关于python - 从Python PasteScript自动生成Python Egg,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6783958/

10-13 03:07