7081847 Installer summary page shows disk used when partition selected for install
authorDermot <Dermot.McCluskey@Oracle.COM>
Wed, 24 Aug 2011 10:24:32 +0100
changeset 1415 8ea2021be442
parent 1413 f54695abeeee
child 1416 b1caac1f77a7
7081847 Installer summary page shows disk used when partition selected for install
usr/src/cmd/gui-install/src/confirm_screen.py
--- a/usr/src/cmd/gui-install/src/confirm_screen.py	Mon Aug 22 11:07:05 2011 -0600
+++ b/usr/src/cmd/gui-install/src/confirm_screen.py	Wed Aug 24 10:24:32 2011 +0100
@@ -42,7 +42,7 @@
 from solaris_install.gui_install.install_profile import InstallProfile
 from solaris_install.logger import INSTALL_LOGGER_NAME
 from solaris_install.target import Target
-from solaris_install.target.physical import Disk
+from solaris_install.target.physical import Disk, Partition
 from solaris_install.target.size import Size
 
 
@@ -176,10 +176,19 @@
         self.logger.info("-- Disk --")
         first_disk = None
         for disk in disks:
-            text_str = _("%.1f GB disk (%s)") % \
-                 (disk.disk_prop.dev_size.get(units=Size.gb_units),
-                  disk.ctd)
-            warn_str = _("This disk will be erased")
+            # The Disk screen will have ensured there is exactly one
+            # Solaris2 partition and that Disk and Partition sizes are valid
+            parts = disk.get_children(class_type=Partition)
+            solaris_parts = [part for part in parts if part.is_solaris]
+
+            # There is no definitive way to detect whether "Use the whole
+            # disk" or "Partition the disk" was selected, so we will display
+            # a message about the Solaris2 partition details for each disk.
+            text_str = _("%.1f GB partition on %.1f GB disk (%s)") % \
+                 (solaris_parts[0].size.get(units=Size.gb_units),
+                 disk.disk_prop.dev_size.get(units=Size.gb_units),
+                 disk.ctd)
+            warn_str = _("This partition will be erased")
             adisk = add_detail_line(self.diskvbox, text_str, warning=warn_str)
             if first_disk == None:
                 first_disk = adisk