diff options
author | Jeremy Katz <katzj@redhat.com> | 2001-08-15 16:54:49 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2001-08-15 16:54:49 +0000 |
commit | 9be6c734b0b0089e28f4be0e61eb4cb2a3ba70d6 (patch) | |
tree | a8dafe1e12edb9f55ebb160b1371c82479470523 | |
parent | ac25873572add4cb5ff688cc426bdc6405980341 (diff) | |
download | anaconda-9be6c734b0b0089e28f4be0e61eb4cb2a3ba70d6.tar.gz anaconda-9be6c734b0b0089e28f4be0e61eb4cb2a3ba70d6.tar.xz anaconda-9be6c734b0b0089e28f4be0e61eb4cb2a3ba70d6.zip |
going back and doing autopartitioning on a hard drive install more than once was horked because we didn't reset the protected partitions
-rw-r--r-- | autopart.py | 3 | ||||
-rw-r--r-- | dispatch.py | 2 | ||||
-rw-r--r-- | partitioning.py | 15 |
3 files changed, 13 insertions, 7 deletions
diff --git a/autopart.py b/autopart.py index 43797c344..8f75c5d24 100644 --- a/autopart.py +++ b/autopart.py @@ -822,7 +822,7 @@ def doClearPartAction(partitions, diskset): deletePart(diskset, delete) continue -def doAutoPartition(dir, diskset, partitions, intf, instClass): +def doAutoPartition(dir, diskset, partitions, intf, instClass, dispatch): if instClass.name and instClass.name == "kickstart": isKickstart = 1 else: @@ -831,6 +831,7 @@ def doAutoPartition(dir, diskset, partitions, intf, instClass): if dir == DISPATCH_BACK: diskset.refreshDevices() partitions.setFromDisk(diskset) + setProtected(partitions, dispatch) return # if no auto partition info in instclass we bail diff --git a/dispatch.py b/dispatch.py index 70c892b19..929b513b2 100644 --- a/dispatch.py +++ b/dispatch.py @@ -64,7 +64,7 @@ installSteps = [ ("autopartition", ("id.diskset", "id.partitions", "intf", "dispatch")), ("autopartitionexecute", doAutoPartition, ("dir", "id.diskset", "id.partitions", "intf", - "id.instClass")), + "id.instClass", "dispatch")), ("fdisk", ("id.diskset", "id.partitions", "intf")), ("partition", ("id.fsset", "id.diskset", "id.partitions", "intf")), ("upgrademount", upgradeMountFilesystems, ("intf", "id.upgradeRoot", diff --git a/partitioning.py b/partitioning.py index 5b215deec..fac72bc2a 100644 --- a/partitioning.py +++ b/partitioning.py @@ -1504,6 +1504,15 @@ def partitionObjectsInitialize(diskset, partitions, dir, intf): partitions.setFromDisk(diskset) +# set the protected partitions +def setProtected(partitions, dispatch): + protected = dispatch.method.protectedPartitions() + if protected: + for device in protected: + log("%s is a protected partition" % (device)) + request = partitions.getRequestByDeviceName(device) + request.type = REQUEST_PROTECTED + def partitionMethodSetup(partitions, dispatch): # turn on/off step based on 3 paths: @@ -1517,11 +1526,7 @@ def partitionMethodSetup(partitions, dispatch): skip = not partitions.useAutopartitioning) dispatch.skipStep("fdisk", skip = not partitions.useFdisk) - protected = dispatch.method.protectedPartitions() - if protected: - for device in protected: - request = partitions.getRequestByDeviceName(device) - request.type = REQUEST_PROTECTED + setProtected(partitions, dispatch) # shorthand mainly for installclasses |