api: Recommend migrating to argparse-based add_default_arguments().
This commit is contained in:
parent
c4876dddae
commit
38df8ef87b
|
@ -30,6 +30,7 @@ import traceback
|
|||
import sys
|
||||
import os
|
||||
import optparse
|
||||
import argparse
|
||||
import platform
|
||||
import random
|
||||
from distutils.version import LooseVersion
|
||||
|
@ -103,8 +104,64 @@ def _default_client():
|
|||
# type: () -> str
|
||||
return "ZulipPython/" + __version__
|
||||
|
||||
def add_default_arguments(parser):
|
||||
# type: (argparse.ArgumentParser) -> argparse.ArgumentParser
|
||||
group = parser.add_argument_group('Zulip API configuration')
|
||||
group.add_argument('--site',
|
||||
dest="zulip_site",
|
||||
help="Zulip server URI",
|
||||
default=None)
|
||||
group.add_argument('--api-key',
|
||||
dest="zulip_api_key",
|
||||
action='store')
|
||||
group.add_argument('--user',
|
||||
dest='zulip_email',
|
||||
help='Email address of the calling bot or user.')
|
||||
group.add_argument('--config-file',
|
||||
action='store',
|
||||
dest="zulip_config_file",
|
||||
help='''Location of an ini file containing the above
|
||||
information. (default ~/.zuliprc)''')
|
||||
group.add_argument('-v', '--verbose',
|
||||
action='store_true',
|
||||
help='Provide detailed output.')
|
||||
group.add_argument('--client',
|
||||
action='store',
|
||||
default=None,
|
||||
dest="zulip_client",
|
||||
help=argparse.SUPPRESS)
|
||||
group.add_argument('--insecure',
|
||||
action='store_true',
|
||||
dest='insecure',
|
||||
help='''Do not verify the server certificate.
|
||||
The https connection will not be secure.''')
|
||||
group.add_argument('--cert-bundle',
|
||||
action='store',
|
||||
dest='cert_bundle',
|
||||
help='''Specify a file containing either the
|
||||
server certificate, or a set of trusted
|
||||
CA certificates. This will be used to
|
||||
verify the server's identity. All
|
||||
certificates should be PEM encoded.''')
|
||||
group.add_argument('--client-cert',
|
||||
action='store',
|
||||
dest='client_cert',
|
||||
help='''Specify a file containing a client
|
||||
certificate (not needed for most deployments).''')
|
||||
group.add_argument('--client-cert-key',
|
||||
action='store',
|
||||
dest='client_cert_key',
|
||||
help='''Specify a file containing the client
|
||||
certificate's key (if it is in a separate
|
||||
file).''')
|
||||
return parser
|
||||
|
||||
def generate_option_group(parser, prefix=''):
|
||||
# type: (optparse.OptionParser, str) -> optparse.OptionGroup
|
||||
logging.warning("""zulip.generate_option_group is based on optparse, which
|
||||
is now deprecated. We recommend migrating to argparse and
|
||||
using zulip.add_default_arguments instead.""")
|
||||
|
||||
group = optparse.OptionGroup(parser, 'Zulip API configuration') # type: ignore # https://github.com/python/typeshed/pull/1248
|
||||
group.add_option('--%ssite' % (prefix,),
|
||||
dest="zulip_site",
|
||||
|
|
Loading…
Reference in a new issue