本文整理汇总了Python中pykickstart.options.KSOptionParser.parse_args方法的典型用法代码示例。如果您正苦于以下问题:Python KSOptionParser.parse_args方法的具体用法?Python KSOptionParser.parse_args怎么用?Python KSOptionParser.parse_args使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pykickstart.options.KSOptionParser
的用法示例。
在下文中一共展示了KSOptionParser.parse_args方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
op = KSOptionParser()
op.add_option("--homer-user", action="store_true", default=False,
dest="homer_user", help="Homer database user name")
op.add_option("--homer-password", action="store_true", default=False,
dest="homer_password", help="Homer database user password")
op.add_option("--homer-database-name", action="store_true", default=False,
dest="homer_database_name", help="Homer database name")
op.add_option("--homer-database-host", action="store_true", default=False,
dest="homer_database_host", help="Homer database host")
op.add_option("--homer-timezone", action="store_true", default=False,
dest="homer_timezone", help="Homer database timezone")
op.add_option("--web-server-type", action="store_true", default=False,
dest="homer_webserver_type", help="Homer web-server type: httpd or nginx")
(opts, extra) = op.parse_args(args=args, lineno=lineno)
#
# # Reject any additoinal arguments. Since AddonData.handle_header
# # rejects any arguments, we can use it to create an error message
# # and raise an exception.
if extra:
AddonData.handle_header(self, lineno, extra)
# Store the result of the option parsing
self.homer_user = opts.homer_user
self.homer_password = opts.homer_password
self.homer_database_name = opts.homer_database_name
self.homer_database_host = opts.homer_database_host
self.homer_timezone = opts.homer_timezone
self.homer_webserver_type = opts.homer_webserver_type
示例2: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
op = KSOptionParser()
op.add_option("--enable", "-e", action="store_true", default=False,
dest="state", help="Enable Cloud Support")
op.add_option("--disable", "-d", action="store_false",
dest="state", help="(Default) Disable Cloud Support")
op.add_option("--allinone", "-a", action="store_true", default=False,
dest="mode", help="Specify the mode of Packstack Installation")
op.add_option("--answer-file", "-f", action="store", type="string",
dest="file", help="Specify URL of answers file")
(options, extra) = op.parse_args(args=args, lineno=lineno)
# Error Handling
if str(options.state) == "True":
self.state = str(options.state)
if options.file and options.mode:
msg = "options --allinone and --answer-file are mutually exclusive"
raise KickstartParseError(msg)
elif options.file:
try:
response = urllib2.urlopen(options.file)
for line in response:
self.lines += line
except urllib2.HTTPError, e:
msg = "Kickstart Error:: HTTPError: " + str(e.code)
raise KickstartParseError, formatErrorMsg(lineno, msg=msg)
except urllib2.URLError, e:
msg = "Kickstart Error: HTTPError: " + str(e.reason)
raise KickstartParseError, formatErrorMsg(lineno, msg=msg)
except:
示例3: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
"""
The handle_header method is called to parse additional arguments in the
%addon section line.
args is a list of all the arguments following the addon ID. For
example, for the line:
%addon org_fedora_hello_world --reverse --arg2="example"
handle_header will be called with args=['--reverse', '--arg2="example"']
:param lineno: the current line number in the kickstart file
:type lineno: int
:param args: the list of arguments from the %addon line
:type args: list
"""
op = KSOptionParser()
op.add_option("--reverse", action="store_true", default=False,
dest="reverse", help="Reverse the display of the addon text")
(opts, extra) = op.parse_args(args=args, lineno=lineno)
# Reject any additional arguments. Since AddonData.handle_header
# rejects any arguments, we can use it to create an error message
# and raise an exception.
if extra:
AddonData.handle_header(self, lineno, args)
# Store the result of the option parsing
self.reverse = opts.reverse
示例4: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
""" Handle the kickstart addon header
:param lineno: Line number
:param args: arguments from %addon line
"""
# This gets called after __init__, very early in the installation.
op = KSOptionParser()
op.add_option("--vgname", required=True,
help="Name of the VG that contains a thinpool named docker-pool")
op.add_option("--fstype", required=True,
help="Type of filesystem to use for docker to use with docker-pool")
op.add_option("--save-args", action="store_true", default=False,
help="Save all extra args to the OPTIONS variable in /etc/sysconfig/docker")
(opts, extra) = op.parse_args(args=args, lineno=lineno)
fmt = blivet.formats.getFormat(opts.fstype)
if not fmt or fmt.type is None:
raise KickstartValueError(formatErrorMsg(lineno,
msg=_("%%addon com_redhat_docker fstype of %s is invalid.")) % opts.fstype)
self.vgname = opts.vgname
self.fstype = opts.fstype
self.enabled = True
self.extra_args = extra
self.save_args = opts.save_args
示例5: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
op = KSOptionParser()
op.add_option("--enable", action="store_true", default=True,
dest="enabled", help="Enable kdump")
op.add_option("--disable", action="store_false",
dest="enabled", help="Disable kdump")
op.add_option("--reserve-mb", type="string", dest="reserveMB",
default="auto", help="Amount of memory in MB to reserve for kdump, or auto")
(opts, extra) = op.parse_args(args=args, lineno=lineno)
# Reject any additional arguments
if extra:
AddonData.handle_header(self, lineno, extra)
# Validate the reserve-mb argument
if opts.reserveMB != "auto":
# Allow a final 'M' for consistency with the crashkernel kernel
# parameter. Strip it if found.
if opts.reserveMB and opts.reserveMB[-1] == 'M':
opts.reserveMB = opts.reserveMB[:-1]
try:
_test = int(opts.reserveMB)
except ValueError:
msg = _("Invalid value %s for --reserve-mb") % opts.reserveMB
if lineno != None:
raise KickstartParseError(formatErrorMsg(lineno, msg=msg))
else:
raise KickstartParseError(msg)
# Store the parsed arguments
self.enabled = opts.enabled
self.reserveMB =opts.reserveMB
示例6: handleHeader
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handleHeader(self, lineno, args):
"""Process the arguments to the %addon header."""
Section.handleHeader(self, lineno, args)
op = KSOptionParser(version=self.version)
(_opts, extra) = op.parse_args(args=args[1:], lineno=lineno)
self.addon_id = extra[0]
# if the addon is not registered, create dummy placeholder for it
if self.addon_id and not hasattr(self.handler.addons, self.addon_id):
setattr(self.handler.addons, self.addon_id, AddonData(self.addon_id))
示例7: handleHeader
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handleHeader(self, lineno, args):
"""Process the arguments to the %packages header and set attributes
on the Version's Packages instance appropriate. This method may be
overridden in a subclass if necessary.
"""
Section.handleHeader(self, lineno, args)
op = KSOptionParser(version=self.version)
op.add_option("--excludedocs", dest="excludedocs", action="store_true",
default=False)
op.add_option("--ignoremissing", dest="ignoremissing",
action="store_true", default=False)
op.add_option("--nobase", dest="nobase", action="store_true",
default=False, deprecated=F18, removed=F22)
op.add_option("--nocore", dest="nocore", action="store_true",
default=False, introduced=F21)
op.add_option("--ignoredeps", dest="resolveDeps", action="store_false",
deprecated=FC4, removed=F9)
op.add_option("--resolvedeps", dest="resolveDeps", action="store_true",
deprecated=FC4, removed=F9)
op.add_option("--default", dest="defaultPackages", action="store_true",
default=False, introduced=F7)
op.add_option("--instLangs", dest="instLangs", type="string",
default=None, introduced=F9)
op.add_option("--multilib", dest="multiLib", action="store_true",
default=False, introduced=F18)
(opts, _extra) = op.parse_args(args=args[1:], lineno=lineno)
if opts.defaultPackages and opts.nobase:
raise KickstartParseError(formatErrorMsg(lineno, msg=_("--default and --nobase cannot be used together")))
elif opts.defaultPackages and opts.nocore:
raise KickstartParseError(formatErrorMsg(lineno, msg=_("--default and --nocore cannot be used together")))
self.handler.packages.excludeDocs = opts.excludedocs
self.handler.packages.addBase = not opts.nobase
if opts.ignoremissing:
self.handler.packages.handleMissing = KS_MISSING_IGNORE
else:
self.handler.packages.handleMissing = KS_MISSING_PROMPT
if opts.defaultPackages:
self.handler.packages.default = True
if opts.instLangs is not None:
self.handler.packages.instLangs = opts.instLangs
self.handler.packages.nocore = opts.nocore
self.handler.packages.multiLib = opts.multiLib
self.handler.packages.seen = True
示例8: handle_header
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
def handle_header(self, lineno, args):
""" Handle the kickstart addon header
:param lineno: Line number
:param args: arguments from %addon line
"""
# This gets called after __init__, very early in the installation.
op = KSOptionParser()
op.add_option("--vgname",
help="Name of the VG that contains a thinpool named docker-pool")
op.add_option("--fstype",
help="Type of filesystem for docker to use with the docker-pool")
op.add_option("--overlay", action="store_true",
help="Use the overlay driver")
op.add_option("--btrfs", action="store_true",
help="Use the BTRFS driver")
op.add_option("--save-args", action="store_true", default=False,
help="Save all extra args to the OPTIONS variable in /etc/sysconfig/docker")
(opts, extra) = op.parse_args(args=args, lineno=lineno)
if sum(1 for v in [opts.overlay, opts.btrfs, opts.vgname] if bool(v)) != 1:
raise KickstartParseError(formatErrorMsg(lineno,
msg=_("%%addon com_redhat_docker must choose one of --overlay, --btrfs, or --vgname")))
self.enabled = True
self.extra_args = extra
self.save_args = opts.save_args
if opts.overlay:
self.storage = OverlayStorage(self)
elif opts.btrfs:
self.storage = BTRFSStorage(self)
elif opts.vgname:
fmt = blivet.formats.get_format(opts.fstype)
if not fmt or fmt.type is None:
raise KickstartParseError(formatErrorMsg(lineno,
msg=_("%%addon com_redhat_docker fstype of %s is invalid.")) % opts.fstype)
self.vgname = opts.vgname
self.fstype = opts.fstype
self.storage = LVMStorage(self)
示例9: handleHeader
# 需要导入模块: from pykickstart.options import KSOptionParser [as 别名]
# 或者: from pykickstart.options.KSOptionParser import parse_args [as 别名]
#.........这里部分代码省略.........
%end
""", epilog="""
Group-level options
-------------------
In addition, group lines in the %packages section
can take the following options:
``--nodefaults``
Only install the group's mandatory packages, not
the default selections.
``--optional``
In addition to the mandatory and default packages,
also install the optional packages. This means all
packages in the group will be installed.
""", version=self.version)
op.add_argument("--excludedocs", action="store_true", default=False,
help="""
Do not install any of the documentation from any packages.
For the most part, this means files in /usr/share/doc*
will not get installed though it could mean other files
as well, depending on how the package was built.""",
introduced=FC4)
op.add_argument("--ignoremissing", action="store_true", default=False,
help="""
Ignore any packages or groups specified in the packages
section that are not found in any configured repository.
The default behavior is to halt the installation and ask
the user if the installation should be aborted or
continued. This option allows fully automated
installation even in the error case.""",
introduced=FC4)
op.add_argument("--nobase", action="store_true", default=False,
deprecated=F18, removed=F22, help="""
Do not install the @base group (installed by default,
otherwise).""")
op.add_argument("--nocore", action="store_true", default=False,
introduced=F21, help="""
Do not install the @core group (installed by default,
otherwise).
**Omitting the core group can produce a system that is
not bootable or that cannot finish the install. Use
with caution.**""")
op.add_argument("--ignoredeps", dest="resolveDeps", action="store_false",
deprecated=FC4, removed=F9, help="")
op.add_argument("--resolvedeps", dest="resolveDeps", action="store_true",
deprecated=FC4, removed=F9, help="")
op.add_argument("--default", dest="defaultPackages", action="store_true",
default=False, introduced=F7, help="""
Install the default package set. This corresponds to the
package set that would be installed if no other
selections were made on the package customization screen
during an interactive install.""")
op.add_argument("--instLangs", default=None, introduced=F9, help="""
Specify the list of languages that should be installed.
This is different from the package group level
selections, though. This option does not specify what
package groups should be installed. Instead, it controls
which translation files from individual packages should
be installed by setting RPM macros.""")
op.add_argument("--multilib", dest="multiLib", action="store_true",
default=False, introduced=F18, help="""
Enable yum's "all" multilib_policy as opposed to the
default of "best".""")
op.add_argument("--excludeWeakdeps", dest="excludeWeakdeps",
action="store_true", default=False, introduced=F24,
help="""
Do not install packages from weak dependencies. These
are packages linked to the selected package set by
Recommends and Supplements flags. By default weak
dependencies will be installed.""")
ns = op.parse_args(args=args[1:], lineno=lineno)
if ns.defaultPackages and ns.nobase:
raise KickstartParseError(formatErrorMsg(lineno, msg=_("--default and --nobase cannot be used together")))
elif ns.defaultPackages and ns.nocore:
raise KickstartParseError(formatErrorMsg(lineno, msg=_("--default and --nocore cannot be used together")))
self.handler.packages.excludeDocs = ns.excludedocs
self.handler.packages.addBase = not ns.nobase
if ns.ignoremissing:
self.handler.packages.handleMissing = KS_MISSING_IGNORE
else:
self.handler.packages.handleMissing = KS_MISSING_PROMPT
if ns.defaultPackages:
self.handler.packages.default = True
if ns.instLangs is not None:
self.handler.packages.instLangs = ns.instLangs
self.handler.packages.nocore = ns.nocore
self.handler.packages.multiLib = ns.multiLib
self.handler.packages.excludeWeakdeps = ns.excludeWeakdeps
self.handler.packages.seen = True