summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dispatch.py4
-rw-r--r--fsset.py8
-rw-r--r--iw/upgrade_migratefs_gui.py41
-rw-r--r--partitioning.py14
-rw-r--r--textw/upgrade_text.py38
-rw-r--r--upgrade.py6
6 files changed, 42 insertions, 69 deletions
diff --git a/dispatch.py b/dispatch.py
index 6b8b226c8..fab61ac49 100644
--- a/dispatch.py
+++ b/dispatch.py
@@ -72,8 +72,8 @@ installSteps = [
("partitiondone", partitioningComplete, ("id.bootloader", "id.fsset",
"id.diskset", "id.partitions",
"intf", "instPath", "dir")),
- ("upgrademigfind", upgradeMigrateFind, ("dispatch", "id.partitions", "id.fsset")),
- ("upgrademigratefs", ("id.fsset", "id.partitions")),
+ ("upgrademigfind", upgradeMigrateFind, ("dispatch", "id.fsset")),
+ ("upgrademigratefs", ("id.fsset",)),
("bootloadersetup", bootloaderSetupChoices, ("dispatch", "id.bootloader",
"id.fsset", "id.diskset",
"dir")),
diff --git a/fsset.py b/fsset.py
index c0d27b46a..c49901564 100644
--- a/fsset.py
+++ b/fsset.py
@@ -733,6 +733,14 @@ class FileSystemSet:
def badblocksEntry(self, entry, chroot):
entry.fsystem.badblocksDevice(entry, self.progressWindow, chroot)
+ def getMigratableEntries(self):
+ retval = []
+ for entry in self.entries:
+ if entry.origfsystem and entry.origfsystem.isMigratable():
+ retval.append(entry)
+
+ return retval
+
def formattablePartitions(self):
list = []
for entry in self.entries:
diff --git a/iw/upgrade_migratefs_gui.py b/iw/upgrade_migratefs_gui.py
index 1db36a30c..c9f47e6c8 100644
--- a/iw/upgrade_migratefs_gui.py
+++ b/iw/upgrade_migratefs_gui.py
@@ -30,28 +30,22 @@ class UpgradeMigrateFSWindow (InstallWindow):
htmlTag = "upmigfs"
def getNext (self):
- # reset
- for req in self.migratereq:
- req.format = 0
- req.migrate = 0
- req.fstype = req.origfstype
+ for entry in migent:
+ entry.setFormat(0)
+ entry.setMigrate(0)
+ entry.fsystem = entry.origfsystem
- for (cb, req) in self.cbs:
+ for (cb, entry) in self.cbs:
if cb.get_active():
- req.format = 0
- req.migrate = 1
- req.fstype = fileSystemTypeGet("ext3")
-
- entry = self.fsset.getEntryByDeviceName(req.device)
entry.setFileSystemType(fileSystemTypeGet("ext3"))
entry.setFormat(0)
entry.setMigrate(1)
return None
- def getScreen (self, fsset, partitions):
+ def getScreen (self, fsset):
- self.migratereq = partitions.getMigratableRequests(fsset)
+ self.migent = fsset.getMigratableEntries()
self.fsset = fsset
box = GtkVBox (FALSE, 5)
@@ -72,26 +66,19 @@ class UpgradeMigrateFSWindow (InstallWindow):
cbox = GtkVBox(FALSE, 5)
self.cbs = []
- for req in self.migratereq:
- if req.origfstype.getName() != req.fstype.getName():
+ for entry in self.migent:
+ if entry.fsystem.getName() != entry.origfsystem.getName():
migrating = 1
else:
migrating = 0
-
- entry = fsset.getEntryByDeviceName(req.device)
- if not entry:
- # only show partitions in current fstab
- continue
- else:
- mntpt = entry.mountpoint
-
- cb = GtkCheckButton("%s - %s - %s" % (req.device,
- req.origfstype.getName(),
- mntpt))
+
+ cb = GtkCheckButton("/dev/%s - %s - %s" % (entry.device.getDevice(),
+ entry.origfsystem.getName(),
+ entry.mountpoint))
cb.set_active(migrating)
cbox.pack_start(cb, FALSE)
- self.cbs.append((cb, req))
+ self.cbs.append((cb, entry))
a = GtkAlignment(0.25, 0.5)
a.add(cbox)
diff --git a/partitioning.py b/partitioning.py
index 4db9ad512..99b89119f 100644
--- a/partitioning.py
+++ b/partitioning.py
@@ -845,20 +845,6 @@ class Partitions:
return 1
return 0
- def getMigratableRequests(self, thefsset):
- retval = []
- for request in self.requests:
- if request.type != REQUEST_PREEXIST:
- continue
-
- if request.origfstype:
- if request.origfstype.isMigratable():
- entry = thefsset.getEntryByDeviceName(request.device)
- if entry:
- retval.append(request)
-
- return retval
-
# return name of boot mount point in current requests
def getBootableRequest(self):
bootreq = None
diff --git a/textw/upgrade_text.py b/textw/upgrade_text.py
index c89e6a4f4..0a81142af 100644
--- a/textw/upgrade_text.py
+++ b/textw/upgrade_text.py
@@ -23,9 +23,9 @@ from flags import flags
from translate import _
class UpgradeMigrateFSWindow:
- def __call__ (self, screen, fsset, partitions):
+ def __call__ (self, screen, thefsset):
- migratereq = partitions.getMigratableRequests(fsset)
+ migent = thefsset.getMigratableEntries()
g = GridFormHelp(screen, _("Migrate Filesystems"), "upmigfs", 1, 4)
@@ -40,22 +40,15 @@ class UpgradeMigrateFSWindow:
g.add(tb, 0, 0, anchorLeft = 1, padding = (0, 0, 0, 1))
partlist = CheckboxTree(height=4, scroll=1)
- for req in migratereq:
- if req.origfstype.getName() != req.fstype.getName():
+ for entry in migent:
+ if entry.fsystem.getName() != entry.origfsystem.getName():
migrating = 1
else:
migrating = 0
- entry = fsset.getEntryByDeviceName(req.device)
- if not entry:
- # only show partitions in current fstab
- continue
- else:
- mntpt = entry.mountpoint
-
- partlist.append("%s - %s - %s" % (req.device,
- req.origfstype.getName(),
- mntpt), req, migrating)
+ partlist.append("/dev/%s - %s - %s" % (entry.device.getDevice(),
+ entry.origfsystem.getName(),
+ entry.mountpoint), entry, migrating)
g.add(partlist, 0, 1, padding = (0, 0, 0, 1))
@@ -73,15 +66,14 @@ class UpgradeMigrateFSWindow:
return INSTALL_BACK
# reset
- for req in migratereq:
- req.format = 0
- req.migrate = 0
- req.fstype = req.origfstype
-
- for req in partlist.getSelection():
- req.format = 0
- req.migrate = 1
- req.fstype = fileSystemTypeGet("ext3")
+ for entry in migent:
+ entry.setFormat(0)
+ entry.setMigrate(0)
+ entry.fsystem = entry.origfsystem
+
+ for entry in partlist.getSelection():
+ entry.setMigrate(1)
+ entry.fsystem = fileSystemTypeGet("ext3")
screen.popWindow()
return INSTALL_OK
diff --git a/upgrade.py b/upgrade.py
index b6e041da1..09b5ca8f3 100644
--- a/upgrade.py
+++ b/upgrade.py
@@ -78,9 +78,9 @@ def mountRootPartition(intf, rootInfo, oldfsset, instPath, allowDirty = 0,
oldfsset.mountFilesystems (instPath)
# returns None if no filesystem exist to migrate
-def upgradeMigrateFind(dispatch, partitions, thefsset):
- migratereq = partitions.getMigratableRequests(thefsset)
- if not migratereq or len(migratereq) < 1:
+def upgradeMigrateFind(dispatch, thefsset):
+ migents = thefsset.getMigratableEntries()
+ if not migents or len(migents) < 1:
dispatch.skipStep("upgrademigratefs")
else:
dispatch.skipStep("upgrademigratefs", skip = 0)