创建命令和子命令的简单工具
argsrun的Python项目详细描述
创建可插入命令和子命令的简单工具。
用法示例:
# 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.pysetup(name="MySite Frontend",entry_points={'console_scripts':['mysite = argsrun:main',],'mysite':['serve-frontend = frontend:serve',]})# my-backend-app/setup.pysetup(name="MySite Admin backend",entry_points={'console_scripts':['mysite = argsrun:main',],'mysite':['serve-admin = backend:serve',]})# In my-frontend-app/frontend/__init__.pyimportargsrundefhandler(options):# Run frontend apppassdefparser_setup(ap):ap.add_argument('--port',help="Port to bind to")main=argsrun.Entry(handler,parser_setup)