Python store“,help=”如果使用,则指定目标,否则使用默认值。(-dest是可选的,-env不是)”,metavar=“”) #主从式部署 deploy\u p=main\u s\u p.add\u解析器('deploy',help='deploy software',parent=[ds\u shared,env\u shared]) #主副自动标签 autotag\u p=main\u s\u p.add\u解析器('autotag',help=“Autotags指定存储库”,父项=[ds\u共享]) 打印(“--------------参数----------”) 打印(变量(主参数解析参数())
这创造了很多我想要的功能。我们更喜欢回答那些实际有Python store“,help=”如果使用,则指定目标,否则使用默认值。(-dest是可选的,-env不是)”,metavar=“”) #主从式部署 deploy\u p=main\u s\u p.add\u解析器('deploy',help='deploy software',parent=[ds\u shared,env\u shared]) #主副自动标签 autotag\u p=main\u s\u p.add\u解析器('autotag',help=“Autotags指定存储库”,父项=[ds\u共享]) 打印(“--------------参数----------”) 打印(变量(主参数解析参数()),python,command,argparse,subcommand,subparsers,Python,Command,Argparse,Subcommand,Subparsers,这创造了很多我想要的功能。我们更喜欢回答那些实际有argparse代码的问题,不管它们是否有效。它应该关注问题,而不是所有细节。值得一提的是,subparser可以定义自己的subparser参数。你说得有道理。我有太多的试用期,希望能找到一些通用答案需要解决。我刚刚发布了我最近的尝试。lock只是一个参数组,一个帮助显示工具。它不会更改解析。它不是一个子parser。请尝试dbq\u解析器,改为添加子parser。使用添加子parser(dest='cmd1',…)将记录使用哪个子分析器命令。
argparse
代码的问题,不管它们是否有效。它应该关注问题,而不是所有细节。值得一提的是,subparser可以定义自己的subparser参数。你说得有道理。我有太多的试用期,希望能找到一些通用答案需要解决。我刚刚发布了我最近的尝试。lock
只是一个参数组,一个帮助显示工具。它不会更改解析。它不是一个子parser
。请尝试dbq\u解析器,改为添加子parser
。使用添加子parser(dest='cmd1',…)将记录使用哪个子分析器命令。如果选择“代码>必需”=Trase< /Cord>,并希望得到正确的错误消息,也会有所帮助。如果您想为所有命令提供一个参数,如<代码> -eNV < /代码>,请考虑在主程序中定义它。ble子Parser。您可以使用实用程序功能(或父级)简化它。
myprogram:
-h help
--DEBUG debugging on
Commands are: dashboard / promote / deploy / auto-tag / dbquery
Some commands have sub-commands.
Dashboard prosesing:
dashboard <ALL | DEBUG | AAA [sub1-aaa | ...] >
Promoting:
promote <environment> [to environment] <system> [version]
Deployment
deploy <system> [version] <in environment>
Auto-tagging
auto-tag <repo> <project> [--days-back]
Database queries (--tab is optional)
(system or env or both are required)
dbquery lock set <system | environment> [--tab]
dbquery lock clear <system | environment> [--tab]
dbquery lock show <system | environment | before-date | after-date> [--tab]
dbquery promote list <system| version| environment | before-date | after-date> [--tab]
dbquery deploy list <system| version| environment | before-date | after-date> [--tab]
dbquery lock set <system | environment>
dbquery lock set <system=system | env=environment>
# python3 main.py -h
usage: main.py [-h] [--debug] {dbqueue,dbq} ...
Main cli tool for processing in the CD pipeline (cdv3, Jun 2019, F.IJskes)
optional arguments:
-h, --help show this help message and exit
--debug Generate debug output and keep temp directories
subcommands:
{dbqueue,dbq} additional help
#python3 main.py dbq -h
usage: main.py dbqueue [-h] set clear show name system etc
optional arguments:
-h, --help show this help message and exit
lock:
lock desc
set Sets lock
clear Clears lock
show Show lock status