Related: rhbz#1277975
This will allow to override special default of first network command
which is --activate.
---
pykickstart/commands/network.py | 12 ++++++++----
tests/commands/network.py | 11 +++++++++++
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/pykickstart/commands/network.py b/pykickstart/commands/network.py
index 4daeece..a9b12b3 100644
--- a/pykickstart/commands/network.py
+++ b/pykickstart/commands/network.py
@@ -155,7 +155,7 @@ class F16_NetworkData(F8_NetworkData):
def __init__(self, *args, **kwargs):
F8_NetworkData.__init__(self, *args, **kwargs)
- self.activate = kwargs.get("activate", False)
+ self.activate = kwargs.get("activate", None)
self.nodefroute = kwargs.get("nodefroute", False)
self.wpakey = kwargs.get("wpakey", "")
@@ -276,7 +276,7 @@ class RHEL6_NetworkData(F8_NetworkData):
def __init__(self, *args, **kwargs):
F8_NetworkData.__init__(self, *args, **kwargs)
- self.activate = kwargs.get("activate", False)
+ self.activate = kwargs.get("activate", None)
self.nodefroute = kwargs.get("nodefroute", False)
self.vlanid = kwargs.get("vlanid", "")
self.bondslaves = kwargs.get("bondslaves", "")
@@ -314,6 +314,8 @@ class RHEL7_NetworkData(F21_NetworkData):
retval += " --bridgeslaves=%s" % self.bridgeslaves
if self.bridgeopts != "":
retval += " --bridgeopts=%s" % self.bridgeopts
+ if self.activate == False:
+ retval += " --no-activate"
return retval
@@ -435,7 +437,7 @@ class F16_Network(F9_Network):
def _getParser(self):
op = F9_Network._getParser(self)
op.add_option("--activate", dest="activate",
action="store_true",
- default=False)
+ default=None)
op.add_option("--nodefroute", dest="nodefroute",
action="store_true",
default=False)
op.add_option("--wpakey", dest="wpakey",
action="store", default="")
@@ -582,7 +584,7 @@ class RHEL6_Network(F9_Network):
def _getParser(self):
op = F9_Network._getParser(self)
op.add_option("--activate", dest="activate",
action="store_true",
- default=False)
+ default=None)
op.add_option("--nodefroute", dest="nodefroute",
action="store_true",
default=False)
op.add_option("--vlanid", dest="vlanid")
@@ -639,6 +641,8 @@ class RHEL7_Network(F21_Network):
default="")
op.add_option("--bridgeopts", dest="bridgeopts",
action="store",
default="")
+ op.add_option("--no-activate", dest="activate",
action="store_false",
+ default=None)
return op
def parse(self, args):
diff --git a/tests/commands/network.py b/tests/commands/network.py
index cd150d1..73bcc04 100644
--- a/tests/commands/network.py
+++ b/tests/commands/network.py
@@ -152,6 +152,17 @@ class RHEL7_TestCase(F20_TestCase):
"--bridgeopts=priority",
KickstartValueError)
+ # activating a device
+ network_data = self.assert_parse("network --device eth0")
+ self.assertEquals(network_data.activate, None)
+ network_data = self.assert_parse("network --device eth0
--no-activate")
+ self.assertEquals(network_data.activate, False)
+ network_data = self.assert_parse("network --device eth0 --activate")
+ self.assertEquals(network_data.activate, True)
+ network_data = self.assert_parse("network --device eth0 --activate
--no-activate")
+ self.assertEquals(network_data.activate, False)
+ network_data = self.assert_parse("network --device eth0 --no-activate
--activate")
+ self.assertEquals(network_data.activate, True)
if __name__ == "__main__":
unittest.main()
--
2.4.3