套筒命令行应用程序运行器
项目描述
套筒CLI界面,用于运行应用程序。应用程序应由受套筒CLI界面管理的控制器运行。
套筒CLI界面加载使用setuptools入口点注册的控制器应用程序。
CLI使用示例
帮助
# sprockets --help
usage: sprockets [-h] [--apps] [--plugins] [-e [PLUGIN]] [-s] [-v] [--version]
CONTROLLER ... [APP]
Command line tool for starting a Sprockets application
positional arguments:
CONTROLLER Available sprockets application controllers
http HTTP Application Controller
amqp RabbitMQ Worker Controller
APP Application to run
optional arguments:
-h, --help show this help message and exit
--apps List installed applications
--plugins List installed plugins
-e [PLUGIN], --enable [PLUGIN]
Enable a plugin
-s, --syslog Log to syslog
-v, --verbose Verbose logging output, use -vv for DEBUG level
logging
--version show program's version number and exit
Find more Sprockets controllers and plugins at
https://sprockets.readthedocs.org
使用NewRelic插件启动Web应用程序
# sprockets -e newrelic http my_web_app
控制器
每个控制器都应至少公开一个main(application, args)方法,该方法将在启动应用程序时被调用。此外,控制器可以实现一个add_cli_arguments(parser)方法,该方法将在设置命令行参数时被调用。这允许控制器将配置指令注入到cli中。
控制器API摘要
module.add_cli_arguments(ArgumentParser) # optional
module.main(app_module, argparse.Namespace)
插件
插件能够在应用生命周期中的多个点注入自身。实现 初始化(控制器) 方法的插件将在控制器启动前调用该方法。此外,如果定义了 on_startup(控制器) 方法,它将在控制器启动应用后调用。最后,如果定义了 on_shutdown(控制器) 方法,它将在控制器关闭时调用。
插件API摘要
plugin.initialize(controller_module) # optional
plugin.on_start(controller_module) # optional
plugin.on_shutdown(controller_module) # optional
示例入口点
控制器
{'sprockets.controller': ['http=sprockets.controllers.http:None']},
应用
{'sprockets.http.app': ['app-name=package.or.module:None']}
(将 app-name 替换为您的应用程序名称)
应用
应用可以是Python包或模块,如果它们被注册到特定的控制器,则可以通过别名引用。应用契约因控制器而异。
项目详情
关闭
sprockets.cli-0.1.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4431e8044ff7605dc16961d9653704b21404f1cc31710bc5da8f84e1e459ee14 |
|
MD5 | 5c867c92a5baaeb276374fb7d3450d99 |
|
BLAKE2b-256 | 252693c5de757f28f3fd27755703ae99d2ff9bb557d239653004b1d1e09c0ab4 |
关闭
sprockets.cli-0.1.0-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8d2deb39d1b46de9e3d3680beda1abecfa8c50a8da8643d08266fba3e7f23e44 |
|
MD5 | 1d46c365bb6118b52b7071a179d31653 |
|
BLAKE2b-256 | 55c6b2c0e5b5612ce8edda0803feccac9d8843ae07e303bcf5bd49975913edbb |