diff options
Diffstat (limited to 'scripts/lib/mic/3rdparty/pykickstart/commands/iscsi.py')
| -rw-r--r-- | scripts/lib/mic/3rdparty/pykickstart/commands/iscsi.py | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/scripts/lib/mic/3rdparty/pykickstart/commands/iscsi.py b/scripts/lib/mic/3rdparty/pykickstart/commands/iscsi.py new file mode 100644 index 0000000000..da5a544e86 --- /dev/null +++ b/scripts/lib/mic/3rdparty/pykickstart/commands/iscsi.py | |||
| @@ -0,0 +1,133 @@ | |||
| 1 | # | ||
| 2 | # Chris Lumens <clumens@redhat.com> | ||
| 3 | # Peter Jones <pjones@redhat.com> | ||
| 4 | # | ||
| 5 | # Copyright 2005, 2006, 2007 Red Hat, Inc. | ||
| 6 | # | ||
| 7 | # This copyrighted material is made available to anyone wishing to use, modify, | ||
| 8 | # copy, or redistribute it subject to the terms and conditions of the GNU | ||
| 9 | # General Public License v.2. This program is distributed in the hope that it | ||
| 10 | # will be useful, but WITHOUT ANY WARRANTY expressed or implied, including the | ||
| 11 | # implied warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
| 12 | # See the GNU General Public License for more details. | ||
| 13 | # | ||
| 14 | # You should have received a copy of the GNU General Public License along with | ||
| 15 | # this program; if not, write to the Free Software Foundation, Inc., 51 | ||
| 16 | # Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Any Red Hat | ||
| 17 | # trademarks that are incorporated in the source code or documentation are not | ||
| 18 | # subject to the GNU General Public License and may only be used or replicated | ||
| 19 | # with the express permission of Red Hat, Inc. | ||
| 20 | # | ||
| 21 | from pykickstart.base import * | ||
| 22 | from pykickstart.errors import * | ||
| 23 | from pykickstart.options import * | ||
| 24 | |||
| 25 | import gettext | ||
| 26 | _ = lambda x: gettext.ldgettext("pykickstart", x) | ||
| 27 | |||
| 28 | class FC6_IscsiData(BaseData): | ||
| 29 | removedKeywords = BaseData.removedKeywords | ||
| 30 | removedAttrs = BaseData.removedAttrs | ||
| 31 | |||
| 32 | def __init__(self, *args, **kwargs): | ||
| 33 | BaseData.__init__(self, *args, **kwargs) | ||
| 34 | self.ipaddr = kwargs.get("ipaddr", "") | ||
| 35 | self.port = kwargs.get("port", "3260") | ||
| 36 | self.target = kwargs.get("target", "") | ||
| 37 | self.user = kwargs.get("user", None) | ||
| 38 | self.password = kwargs.get("password", None) | ||
| 39 | |||
| 40 | def _getArgsAsStr(self): | ||
| 41 | retval = "" | ||
| 42 | |||
| 43 | if self.target != "": | ||
| 44 | retval += " --target=%s" % self.target | ||
| 45 | if self.ipaddr != "": | ||
| 46 | retval += " --ipaddr=%s" % self.ipaddr | ||
| 47 | if self.port != "3260": | ||
| 48 | retval += " --port=%s" % self.port | ||
| 49 | if self.user is not None: | ||
| 50 | retval += " --user=%s" % self.user | ||
| 51 | if self.password is not None: | ||
| 52 | retval += " --password=%s" % self.password | ||
| 53 | |||
| 54 | return retval | ||
| 55 | |||
| 56 | def __str__(self): | ||
| 57 | retval = BaseData.__str__(self) | ||
| 58 | retval += "iscsi%s\n" % self._getArgsAsStr() | ||
| 59 | return retval | ||
| 60 | |||
| 61 | class F10_IscsiData(FC6_IscsiData): | ||
| 62 | removedKeywords = FC6_IscsiData.removedKeywords | ||
| 63 | removedAttrs = FC6_IscsiData.removedAttrs | ||
| 64 | |||
| 65 | def __init__(self, *args, **kwargs): | ||
| 66 | FC6_IscsiData.__init__(self, *args, **kwargs) | ||
| 67 | self.user_in = kwargs.get("user_in", None) | ||
| 68 | self.password_in = kwargs.get("password_in", None) | ||
| 69 | |||
| 70 | def _getArgsAsStr(self): | ||
| 71 | retval = FC6_IscsiData._getArgsAsStr(self) | ||
| 72 | |||
| 73 | if self.user_in is not None: | ||
| 74 | retval += " --reverse-user=%s" % self.user_in | ||
| 75 | if self.password_in is not None: | ||
| 76 | retval += " --reverse-password=%s" % self.password_in | ||
| 77 | |||
| 78 | return retval | ||
| 79 | |||
| 80 | class FC6_Iscsi(KickstartCommand): | ||
| 81 | removedKeywords = KickstartCommand.removedKeywords | ||
| 82 | removedAttrs = KickstartCommand.removedAttrs | ||
| 83 | |||
| 84 | def __init__(self, writePriority=71, *args, **kwargs): | ||
| 85 | KickstartCommand.__init__(self, writePriority, *args, **kwargs) | ||
| 86 | self.op = self._getParser() | ||
| 87 | |||
| 88 | self.iscsi = kwargs.get("iscsi", []) | ||
| 89 | |||
| 90 | def __str__(self): | ||
| 91 | retval = "" | ||
| 92 | for iscsi in self.iscsi: | ||
| 93 | retval += iscsi.__str__() | ||
| 94 | |||
| 95 | return retval | ||
| 96 | |||
| 97 | def _getParser(self): | ||
| 98 | op = KSOptionParser() | ||
| 99 | op.add_option("--target", dest="target", action="store", type="string") | ||
| 100 | op.add_option("--ipaddr", dest="ipaddr", action="store", type="string", | ||
| 101 | required=1) | ||
| 102 | op.add_option("--port", dest="port", action="store", type="string") | ||
| 103 | op.add_option("--user", dest="user", action="store", type="string") | ||
| 104 | op.add_option("--password", dest="password", action="store", | ||
| 105 | type="string") | ||
| 106 | return op | ||
| 107 | |||
| 108 | def parse(self, args): | ||
| 109 | (opts, extra) = self.op.parse_args(args=args, lineno=self.lineno) | ||
| 110 | |||
| 111 | if len(extra) != 0: | ||
| 112 | mapping = {"command": "iscsi", "options": extra} | ||
| 113 | raise KickstartValueError, formatErrorMsg(self.lineno, msg=_("Unexpected arguments to %(command)s command: %(options)s") % mapping) | ||
| 114 | |||
| 115 | dd = self.handler.IscsiData() | ||
| 116 | self._setToObj(self.op, opts, dd) | ||
| 117 | dd.lineno = self.lineno | ||
| 118 | return dd | ||
| 119 | |||
| 120 | def dataList(self): | ||
| 121 | return self.iscsi | ||
| 122 | |||
| 123 | class F10_Iscsi(FC6_Iscsi): | ||
| 124 | removedKeywords = FC6_Iscsi.removedKeywords | ||
| 125 | removedAttrs = FC6_Iscsi.removedAttrs | ||
| 126 | |||
| 127 | def _getParser(self): | ||
| 128 | op = FC6_Iscsi._getParser(self) | ||
| 129 | op.add_option("--reverse-user", dest="user_in", action="store", | ||
| 130 | type="string") | ||
| 131 | op.add_option("--reverse-password", dest="password_in", action="store", | ||
| 132 | type="string") | ||
| 133 | return op | ||
