跳转到主要内容

创建命令和子命令的简单工具

项目描述

创建可插拔命令和子命令的简单工具。

使用示例

# in setup.py of your project specify argsrun entry point in console scripts
# and provided commands as follows:

setup(name="MyProj",
      # ...
      entry_points={
        'console_scripts': [
            'myproj = argsrun:main',  # argsrun will handle main command
        ],
        'myproj': [                   # ...and lookup for this subcommands
            'main = myproj:main',
            'run = myproj.module:run',
        ],
      })

如果您有多个包/项目,并且希望它们共享相同的入口点,您可以轻松地按照以下方式操作

# my-frontend-app/setup.py

setup(name="MySite Frontend",
      entry_points={
        'console_scripts': [
            'mysite = argsrun:main',
        ],
        'mysite': [
            'serve-frontend = frontend:serve',
        ]
      })

# my-backend-app/setup.py

setup(name="MySite Admin backend",
      entry_points={
        'console_scripts': [
            'mysite = argsrun:main',
        ],
        'mysite': [
            'serve-admin = backend:serve',
        ]
      })

 # In my-frontend-app/frontend/__init__.py

 import argsrun

 def handler(options):
     # Run frontend app
     pass

 def parser_setup(ap):
     ap.add_argument('--port', help="Port to bind to")

 main = argsrun.Entry(handler, parser_setup)

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

argsrun-0.0.2.tar.gz (4.0 kB 查看哈希)

上传时间

构建分布

argsrun-0.0.2-py3-none-any.whl (5.1 kB 查看哈希)

上传时间 Python 3

由以下提供支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页