79555a9b278df67ae29f49dce8f719a7af2c6b8f
[platform/upstream/mic.git] / mic / 3rdparty / pykickstart / commands / zerombr.py
1 #
2 # Chris Lumens <clumens@redhat.com>
3 #
4 # Copyright 2005, 2006, 2007 Red Hat, Inc.
5 #
6 # This copyrighted material is made available to anyone wishing to use, modify,
7 # copy, or redistribute it subject to the terms and conditions of the GNU
8 # General Public License v.2.  This program is distributed in the hope that it
9 # will be useful, but WITHOUT ANY WARRANTY expressed or implied, including the
10 # implied warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11 # See the GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License along with
14 # this program; if not, write to the Free Software Foundation, Inc., 51
15 # Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  Any Red Hat
16 # trademarks that are incorporated in the source code or documentation are not
17 # subject to the GNU General Public License and may only be used or replicated
18 # with the express permission of Red Hat, Inc. 
19 #
20 import warnings
21
22 from pykickstart.base import *
23 from pykickstart.options import *
24
25 import gettext
26 _ = lambda x: gettext.ldgettext("pykickstart", x)
27
28 class FC3_ZeroMbr(KickstartCommand):
29     removedKeywords = KickstartCommand.removedKeywords
30     removedAttrs = KickstartCommand.removedAttrs
31
32     def __init__(self, writePriority=110, *args, **kwargs):
33         KickstartCommand.__init__(self, writePriority, *args, **kwargs)
34         self.op = self._getParser()
35         self.zerombr = kwargs.get("zerombr", False)
36
37     def __str__(self):
38         retval = KickstartCommand.__str__(self)
39
40         if self.zerombr:
41             retval += "# Clear the Master Boot Record\nzerombr\n"
42
43         return retval
44
45     def _getParser(self):
46         op = KSOptionParser()
47         return op
48
49     def parse(self, args):
50         (opts, extra) = self.op.parse_args(args=args, lineno=self.lineno)
51
52         if len(extra) > 0:
53             warnings.warn(_("Ignoring deprecated option on line %s:  The zerombr command no longer takes any options.  In future releases, this will result in a fatal error from kickstart.  Please modify your kickstart file to remove any options.") % self.lineno, DeprecationWarning)
54
55         self.zerombr = True
56         return self
57
58 class F9_ZeroMbr(FC3_ZeroMbr):
59     removedKeywords = FC3_ZeroMbr.removedKeywords
60     removedAttrs = FC3_ZeroMbr.removedAttrs
61
62     def parse(self, args):
63         (opts, extra) = self.op.parse_args(args=args, lineno=self.lineno)
64
65         if len(extra) > 0:
66             raise KickstartParseError, formatErrorMsg(self.lineno, msg=_("Kickstart command %s does not take any arguments") % "zerombr")
67
68         self.zerombr = True
69         return self