[PATCH pykickstart 2/3] Add bonding support to F19

Radek Vykydal rvykydal at redhat.com
Thu Feb 28 15:50:40 UTC 2013


---
 pykickstart/commands/network.py | 29 +++++++++++++++++++++++++++++
 pykickstart/handlers/control.py |  4 ++--
 2 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/pykickstart/commands/network.py b/pykickstart/commands/network.py
index 87609af..a671490 100644
--- a/pykickstart/commands/network.py
+++ b/pykickstart/commands/network.py
@@ -168,6 +168,25 @@ class F16_NetworkData(F8_NetworkData):
 
         return retval
 
+class F19_NetworkData(F16_NetworkData):
+    removedKeywords = F16_NetworkData.removedKeywords
+    removedAttrs = F16_NetworkData.removedAttrs
+
+    def __init__(self, *args, **kwargs):
+        F16_NetworkData.__init__(self, *args, **kwargs)
+        self.bondslaves = kwargs.get("bondslaves", False)
+        self.bondopts = kwargs.get("bondopts", False)
+
+    def _getArgsAsStr(self):
+        retval = F16_NetworkData._getArgsAsStr(self)
+
+        if self.bondslaves != "":
+            retval += "--bondslaves=%s" % self.bondslaves
+        if self.bondopts != "":
+            retval += "--bondopts=%s" % self.bondopts
+
+        return retval
+
 class RHEL4_NetworkData(FC3_NetworkData):
     removedKeywords = FC3_NetworkData.removedKeywords
     removedAttrs = FC3_NetworkData.removedAttrs
@@ -346,6 +365,16 @@ class F18_Network(F16_Network):
                 return nd.hostname
         return None
 
+class F19_Network(F18_Network):
+
+    def _getParser(self):
+        op = F18_Network._getParser(self)
+        op.add_option("--bondslaves", dest="bondslaves", action="store",
+                default="")
+        op.add_option("--bondopts", dest="bondopts", action="store",
+                default="")
+        return op
+
 class RHEL4_Network(FC3_Network):
     removedKeywords = FC3_Network.removedKeywords
     removedAttrs = FC3_Network.removedAttrs
diff --git a/pykickstart/handlers/control.py b/pykickstart/handlers/control.py
index e3b58bb..0147449 100644
--- a/pykickstart/handlers/control.py
+++ b/pykickstart/handlers/control.py
@@ -916,7 +916,7 @@ commandMap = {
         "logvol": logvol.F18_LogVol,
         "mediacheck": mediacheck.FC4_MediaCheck,
         "multipath": multipath.FC6_MultiPath,
-        "network": network.F18_Network,
+        "network": network.F19_Network,
         "nfs": method.F18_Method,
         "part": partition.F18_Partition,
         "partition": partition.F18_Partition,
@@ -1544,7 +1544,7 @@ dataMap = {
         "IscsiData": iscsi.F17_IscsiData,
         "LogVolData": logvol.F18_LogVolData,
         "MultiPathData": multipath.FC6_MultiPathData,
-        "NetworkData": network.F16_NetworkData,
+        "NetworkData": network.F19_NetworkData,
         "PartData": partition.F18_PartData,
         "RaidData": raid.F18_RaidData,
         "RepoData": repo.F15_RepoData,
-- 
1.7.11.7



More information about the anaconda-patches mailing list