[PATCH storage 7/7] Destroy and create luks child of raid array too when editing in UI.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---
 iw/raid_dialog_gui.py |   24 ++++++++++++++----------
 1 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/iw/raid_dialog_gui.py b/iw/raid_dialog_gui.py
index 5daab41..578e3e7 100644
--- a/iw/raid_dialog_gui.py
+++ b/iw/raid_dialog_gui.py
@@ -185,17 +185,11 @@ class RaidEditor:
                                                   totalDevices=len(raidmembers),
                                                   memberDevices=members)
 
-                if self.lukscb and self.lukscb.get_active() and \
-                   (self.isNew or self.origrequest.format.type != "luks"):
-                    luksdev = LUKSDevice("luks-%s" % request.name,
-                                         format=format,
-                                         parents=request)
-                    format = getFormat("luks",
-                                       passphrase=self.storage.encryptionPassphrase)
-                    request.format = format
-                elif self.lukscb and not self.lukscb.get_active() and \
-                     not self.isNew and self.origrequest.format.type == "luks":
+                # we must destroy luks leaf before original raid request
+                if self.origrequest.format.type == "luks":
+                    # => not self.isNew
                     # destroy luks format and mapped device
+                    # XXX remove catching, it should always succeed
                     try:
                         luksdev = self.storage.devicetree.getChildren(self.origrequest)[0]
                     except IndexError:
@@ -205,6 +199,16 @@ class RaidEditor:
                         actions.append(ActionDestroyDevice(luksdev))
                         luksdev = None
 
+                if self.lukscb and self.lukscb.get_active():
+                    luksdev = LUKSDevice("luks-%s" % request.name,
+                                         format=format,
+                                         parents=request)
+                    format = getFormat("luks",
+                                       passphrase=self.storage.encryptionPassphrase)
+                    request.format = format
+                elif self.lukscb and not self.lukscb.get_active() and \
+                    self.origrequest.format.type == "luks":
+
                     # XXXRV not needed as we destroy origrequest ?
                     actions.append(ActionDestroyFormat(self.origrequest))
 
-- 
1.5.4.3

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux