On Mon, 2013-03-25 at 10:22 +0100, Radek Vykydal wrote:
pykickstart/commands/lang.py | 34 ++++++++++++++++++++++++++++++++++ pykickstart/handlers/control.py | 2 +- 2 files changed, 35 insertions(+), 1 deletion(-)
diff --git a/pykickstart/commands/lang.py b/pykickstart/commands/lang.py index dbdc852..b44bc82 100644 --- a/pykickstart/commands/lang.py +++ b/pykickstart/commands/lang.py @@ -52,3 +52,37 @@ class FC3_Lang(KickstartCommand):
self.lang = extra[0] return self
+class F19_Lang(FC3_Lang):
- removedKeywords = FC3_Lang.removedKeywords
- removedAttrs = FC3_Lang.removedAttrs
- def __init__(self, writePriority=0, *args, **kwargs):
FC3_Lang.__init__(self, writePriority, *args, **kwargs)self.addsupport = kwargs.get("addsupport", [])self.op = self._getParser()- def __str__(self):
s = FC3_Lang.__str__(self)if s and self.addsupport:s = s.rstrip()s += " --addsupport=%s\n" % ",".join(self.addsupport)return s- def _getParser(self):
def list_cb (option, opt_str, value, parser):for item in value.split(','):if item:parser.values.ensure_value(option.dest, []).append(item)op = FC3_Lang._getParser(self)op.add_option("--addsupport", dest="addsupport", action="callback",callback=list_cb, nargs=1, type="string")return op- def parse(self, args):
FC3_Lang.parse(self, args)(opts, extra) = self.op.parse_args(args=args, lineno=self.lineno)self._setToSelf(self.op, opts)return selfdiff --git a/pykickstart/handlers/control.py b/pykickstart/handlers/control.py index 52b0a94..113de2d 100644 --- a/pykickstart/handlers/control.py +++ b/pykickstart/handlers/control.py @@ -971,7 +971,7 @@ commandMap = { "iscsi": iscsi.F17_Iscsi, "iscsiname": iscsiname.FC6_IscsiName, "keyboard": keyboard.F18_Keyboard,
"lang": lang.FC3_Lang,
"lang": lang.F19_Lang, "logging": logging.FC6_Logging, "logvol": logvol.F18_LogVol, "mediacheck": mediacheck.FC4_MediaCheck,
Please, add a test for this new option to tests/commands/lang.py