本文整理匯總了Python中configargparse.ArgParser.add_subparsers方法的典型用法代碼示例。如果您正苦於以下問題:Python ArgParser.add_subparsers方法的具體用法?Python ArgParser.add_subparsers怎麽用?Python ArgParser.add_subparsers使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類configargparse.ArgParser
的用法示例。
在下文中一共展示了ArgParser.add_subparsers方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: _process_args
# 需要導入模塊: from configargparse import ArgParser [as 別名]
# 或者: from configargparse.ArgParser import add_subparsers [as 別名]
def _process_args(self):
flags = ArgParser(prog='repoman',
add_config_file_help=True,
ignore_unknown_config_file_keys=True,
default_config_files=self.config_files)
flags.add('--config-file', required=False, is_config_file=True,
env_var='REPOMAN_CONFIG_FILE',
help='override config file path')
# global flags
flags.add('--simpledb-domain', action='store', required=True,
env_var='REPOMAN_SIMPLEDB_DOMAIN')
flags.add('--s3-bucket', action='store', required=True,
env_var='REPOMAN_S3_BUCKET')
flags.add('--aws-profile', action='store', required=False, default='',
env_var='REPOMAN_AWS_CREDENTIAL_PROFILE',
help='Use the specified profile in ~/.aws/credentials')
flags.add('--region', action='store', required=False,
default=None, help='AWS region to connect to')
flags.add('--aws-role', action='store', required=False, default='',
env_var='REPOMAN_AWS_ROLE',
help='Full ARN of IAM role to assume before calling any '
'other AWS APIs')
flags.add('--log-config', action='store', required=False, default='',
env_var='REPOMAN_LOG_CONFIG',
help='path to a JSON file with a python log configuration ')
flags.add('--skip-checkup', action='store_true',
required=False, default=False,
help='do not run system health checkup on every action')
flags.add('--debug', action='store_true', required=False,
default=False, help='debug logging')
flags.add('--gpg-home',
required=False, env_var='REPOMAN_GPG_HOME',
default='~/.gnupg',
help='set path to gpg keyring')
flags.add('--gpg-signer', action='append',
required=False, help='gpg identity to sign as')
flags.add('--gpg-pinentry-path', action='store',
default='/usr/bin/pinentry',
required=False, help='path to gpg pinentry program')
flags.add('--gpg-passphrase', action='append',
required=False,
help='passphrase for gpg secret key for signing '
'(if multiple, must be in same order as --gpg-signer)')
flags.add('--auto-purge', action='store', default=0,
type=int, required=False,
help='automatically purge packages older than the '
'last N revisions when adding or copying')
# subparsers for commands
commands = flags.add_subparsers(dest='command')
# singelton commands
commands.add_parser('checkup', help='check that all systems are go')
commands.add_parser('backup',
help='dump the simpledb state to a JSON file')
# restore command
restore_flags = commands.add_parser(
'restore', help='restore simpledb state from a JSON file')
restore_flags.add(
'filename', nargs=1, help='path to backup file')
# commands that take flags
setup_flags = commands.add_parser(
'setup',
help='do initial system configuration: create simpledb domain '
'and s3 bucket, specify at least one each architecture, '
'distribution and component to publish.'
)
repo_flags = commands.add_parser(
'repo', help='repo management commands')
add_flags = commands.add_parser(
'add', help='add package files to repo')
cp_flags = commands.add_parser(
'cp', help='move packages between components and distributions')
rm_flags = commands.add_parser(
'rm', help='remove specific packages from repo')
publish_flags = commands.add_parser(
'publish', help='publish the repository to s3')
query_flags = commands.add_parser(
'query', help='query the repository')
# command flags
# query
query_flags.add('-a', '--architecture',
action='append', required=False,
help='narrow query by architecture(s)')
query_flags.add('-d', '--distribution',
action='append', required=False,
help='narrow query by distribution(s)')
query_flags.add('-c', '--component',
action='append', required=False,
help='narrow query by component(s)')
query_flags.add('-p', '--package',
action='append', required=False,
help='narrow query by package name(s)')
query_flags.add('-w', '--wildcard', action='store_true', default=False,
help='match package names to left of --package flag')
#.........這裏部分代碼省略.........