[PATCH 2/3 v2] Unify writeNetworkConf with other modules (rename, put in ks.execute)
Radek Vykydal
rvykydal at redhat.com
Thu Nov 29 12:30:22 UTC 2012
---
pyanaconda/__init__.py | 2 --
pyanaconda/install.py | 3 +--
pyanaconda/kickstart.py | 11 +++++------
pyanaconda/network.py | 33 ++++++++++++++++-----------------
4 files changed, 22 insertions(+), 27 deletions(-)
diff --git a/pyanaconda/__init__.py b/pyanaconda/__init__.py
index 1f6febd..a442f24 100644
--- a/pyanaconda/__init__.py
+++ b/pyanaconda/__init__.py
@@ -242,6 +242,4 @@ class Anaconda(object):
network.copyConfigToPath(ROOT_PATH)
if not self.ksdata:
self.instClass.setNetworkOnbootDefault()
- network.disableNMForStorageDevices(self.storage)
- network.autostartFCoEDevices(self.storage)
self.desktop.write()
diff --git a/pyanaconda/install.py b/pyanaconda/install.py
index bb1158b..d407ffe 100644
--- a/pyanaconda/install.py
+++ b/pyanaconda/install.py
@@ -25,7 +25,6 @@ from pyanaconda.storage import turnOnFilesystems
from pyanaconda.bootloader import writeBootLoader
from pyanaconda.progress import progress_report
from pyanaconda.users import createLuserConf, getPassAlgo, Users
-from pyanaconda.network import writeNetworkConf
from pyanaconda import flags
from pyanaconda import timezone
@@ -69,7 +68,7 @@ def doConfiguration(storage, payload, ksdata, instClass):
ksdata.xconfig.execute(storage, ksdata, instClass)
with progress_report(_("Writing network configuration")):
- writeNetworkConf(storage, ksdata, instClass)
+ ksdata.network.execute(storage, ksdata, instClass)
# Creating users and groups requires some pre-configuration.
with progress_report(_("Creating users")):
diff --git a/pyanaconda/kickstart.py b/pyanaconda/kickstart.py
index a52b6eb..1ec294a 100644
--- a/pyanaconda/kickstart.py
+++ b/pyanaconda/kickstart.py
@@ -42,13 +42,13 @@ from constants import *
import shlex
import sys
import urlgrabber
-import network
import pykickstart.commands as commands
from storage.devices import *
from pyanaconda import keyboard
from pyanaconda import ntp
from pyanaconda import timezone
from pyanaconda import localization
+from pyanaconda import network
from pyanaconda.simpleconfig import SimpleConfigFile
from pyanaconda.users import getPassAlgo
from pyanaconda.desktop import Desktop
@@ -754,10 +754,9 @@ class Logging(commands.logging.FC6_Logging):
remote_server = "%s:%s" %(self.host, self.port)
logger.updateRemote(remote_server)
-class NetworkData(commands.network.F16_NetworkData):
- def execute(self):
- # it happens in writeNetworkConf
- pass
+class Network(commands.network.F18_Network):
+ def execute(self, storage, ksdata, instClass):
+ network.write_network_config(storage, ksdata, instClass, ROOT_PATH)
class MultiPath(commands.multipath.FC6_MultiPath):
def parse(self, args):
@@ -1319,6 +1318,7 @@ commandMap = {
"logging": Logging,
"logvol": LogVol,
"multipath": MultiPath,
+ "network": Network,
"part": Partition,
"partition": Partition,
"raid": Raid,
@@ -1335,7 +1335,6 @@ commandMap = {
dataMap = {
"BTRFSData": BTRFSData,
"LogVolData": LogVolData,
- "NetworkData": NetworkData,
"PartData": PartitionData,
"RaidData": RaidData,
"VolGroupData": VolGroupData,
diff --git a/pyanaconda/network.py b/pyanaconda/network.py
index 92449a4..8cdd366 100644
--- a/pyanaconda/network.py
+++ b/pyanaconda/network.py
@@ -37,7 +37,6 @@ import tempfile
import simpleconfig
from flags import flags
from simpleconfig import IfcfgFile
-from pyanaconda.constants import ROOT_PATH
import urlgrabber.grabber
from pyanaconda.storage.devices import FcoeDiskDevice, iScsiDiskDevice
@@ -567,11 +566,12 @@ def dracutBootArguments(ifcfg, storage_ipaddr, hostname=None):
def kickstartNetworkData(ifcfg=None, hostname=None):
- from pyanaconda.kickstart import NetworkData
+ from pyanaconda.kickstart import AnacondaKSHandler
+ handler = AnacondaKSHandler()
kwargs = {}
if not ifcfg and hostname:
- return NetworkData(hostname=hostname, bootProto="")
+ return handler.NetworkData(hostname=hostname, bootProto="")
# ipv4 and ipv6
if not ifcfg.get("ESSID"):
@@ -642,7 +642,7 @@ def kickstartNetworkData(ifcfg=None, hostname=None):
hostname != "localhost.localdomain"):
kwargs["hostname"] = hostname
- return NetworkData(**kwargs)
+ return handler.NetworkData(**kwargs)
def getSSIDs(devices_to_scan=None):
@@ -826,11 +826,11 @@ def disableIPV6(rootpath):
f.write("options ipv6 disable=1\n")
f.close()
-def disableNMForStorageDevices(storage):
+def disableNMForStorageDevices(rootpath, storage):
for devname in getDevices():
if (usedByFCoE(devname, storage) or
usedByRootOnISCSI(devname, storage)):
- dev = NetworkDevice(ROOT_PATH + netscriptsDir, devname)
+ dev = NetworkDevice(rootpath + netscriptsDir, devname)
if os.access(dev.path, os.R_OK):
dev.loadIfcfgFile()
dev.set(('NM_CONTROLLED', 'no'))
@@ -842,10 +842,10 @@ def disableNMForStorageDevices(storage):
devname)
# sets ONBOOT=yes (and its mirror value in ksdata) for devices used by FCoE
-def autostartFCoEDevices(storage, ksdata):
+def autostartFCoEDevices(rootpath, storage, ksdata):
for devname in getDevices():
if usedByFCoE(devname, storage):
- dev = NetworkDevice(ROOT_PATH + netscriptsDir, devname)
+ dev = NetworkDevice(rootpath + netscriptsDir, devname)
if os.access(dev.path, os.R_OK):
dev.loadIfcfgFile()
dev.set(('ONBOOT', 'yes'))
@@ -880,19 +880,19 @@ def usedByRootOnISCSI(iface, storage):
return False
-def writeNetworkConf(storage, ksdata, instClass):
- write_sysconfig_network(ROOT_PATH, ksdata, overwrite=flags.livecdInstall)
- disableIPV6(ROOT_PATH)
+def write_network_config(storage, ksdata, instClass, rootpath):
+ write_sysconfig_network(rootpath, ksdata, overwrite=flags.livecdInstall)
+ disableIPV6(rootpath)
if not flags.imageInstall:
- copyIfcfgFiles(ROOT_PATH)
- copyDhclientConfFiles(ROOT_PATH)
- copyFileToPath("/etc/resolv.conf", ROOT_PATH, overwrite=flags.livecdInstall)
+ copyIfcfgFiles(rootpath)
+ copyDhclientConfFiles(rootpath)
+ copyFileToPath("/etc/resolv.conf", rootpath, overwrite=flags.livecdInstall)
# TODO the default for ONBOOT needs to be lay down
# before newui we didn't set it for kickstart installs
instClass.setNetworkOnbootDefault(ksdata)
# NM_CONTROLLED is not mirrored in ksdata
- disableNMForStorageDevices(storage)
- autostartFCoEDevices(storage, ksdata)
+ disableNMForStorageDevices(rootpath, storage)
+ autostartFCoEDevices(rootpath, storage, ksdata)
def wait_for_dhcp():
"""If NM is in connecting state, wait for connection.
@@ -994,7 +994,6 @@ def setOnboot(ksdata):
# networking initialization and ksdata object update
def networkInitialize(ksdata):
- from pyanaconda.kickstart import NetworkData
if not flags.imageInstall:
# XXX: this should go to anaconda dracut
--
1.7.11.7
More information about the anaconda-patches
mailing list