author | swati sarraf <swati.sarraf@oracle.com> |
Fri, 20 Jul 2012 16:19:17 -0700 | |
changeset 1752 | 5c51d42f1aaf |
parent 1716 | 0cea9255024f |
child 1754 | 90688163755c |
permissions | -rw-r--r-- |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1 |
#!/usr/bin/python |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
2 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
3 |
# CDDL HEADER START |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
4 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
5 |
# The contents of this file are subject to the terms of the |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
6 |
# Common Development and Distribution License (the "License"). |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
7 |
# You may not use this file except in compliance with the License. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
8 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
9 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
10 |
# or http://www.opensolaris.org/os/licensing. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
11 |
# See the License for the specific language governing permissions |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
12 |
# and limitations under the License. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
13 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
14 |
# When distributing Covered Code, include this CDDL HEADER in each |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
15 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
16 |
# If applicable, add the following below this CDDL HEADER, with the |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
17 |
# fields enclosed by brackets "[]" replaced with your own identifying |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
18 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
19 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
20 |
# CDDL HEADER END |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
21 |
# |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
22 |
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
23 |
# |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
24 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
25 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
26 |
Disk Screen for GUI Install app |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
27 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
28 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
29 |
import pygtk |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
30 |
pygtk.require('2.0') |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
31 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
32 |
import locale |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
33 |
import logging |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
34 |
import os |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
35 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
36 |
import glib |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
37 |
import gobject |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
38 |
import gtk |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
39 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
40 |
import osol_install.errsvc as errsvc |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
41 |
import osol_install.liberrsvc as liberrsvc |
1752
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
42 |
from math import ceil |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
43 |
from solaris_install.data_object import ObjectNotFoundError |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
44 |
from solaris_install.engine import InstallEngine |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
45 |
from solaris_install.gui_install.base_screen import BaseScreen, \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
46 |
NotOkToProceedError |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
47 |
from solaris_install.gui_install.fdisk_panel import FdiskPanel |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
48 |
from solaris_install.gui_install.gpt_panel import GPTPanel |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
49 |
from solaris_install.gui_install.gui_install_common import \ |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
50 |
empty_container, get_td_results_state, is_discovery_complete, \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
51 |
modal_dialog, set_td_results_state, IMAGE_DIR, COLOR_WHITE, \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
52 |
DEFAULT_LOG_LOCATION, GLADE_ERROR_MSG, ISCSI_LABEL, N_ |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
53 |
from solaris_install.gui_install.install_profile import InstallProfile |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
54 |
from solaris_install.logger import INSTALL_LOGGER_NAME |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
55 |
from solaris_install.target import Target |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
56 |
from solaris_install.target.controller import TargetController, \ |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
57 |
BadDiskError, BadDiskBlockSizeError, SubSizeDiskError, DEFAULT_ZPOOL_NAME |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
58 |
from solaris_install.target.logical import Zpool, Zvol, Filesystem |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
59 |
from solaris_install.target.physical import Disk, Iscsi, Slice |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
60 |
from solaris_install.target.shadow.physical import ShadowPhysical |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
61 |
from solaris_install.target.size import Size |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
62 |
|
1298
268fd28dea26
7068118 system after gui-install seems to lack swap entry in vfstab
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1229
diff
changeset
|
63 |
ROOT_POOL = DEFAULT_ZPOOL_NAME |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
64 |
EXPORT_FS_NAME = 'export' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
65 |
EXPORT_FS_MOUNTPOINT = '/export' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
66 |
EXPORT_HOME_FS_NAME = 'export/home' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
67 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
68 |
LOGGER = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
69 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
70 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
71 |
class DiskScreen(BaseScreen): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
72 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
73 |
The Disk screen. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
74 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
75 |
There are two distinct versions of this screen: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
76 |
- if the user enters this screen before TD has completed |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
77 |
execution, they will see the "Finding Disks..." version, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
78 |
which just shows a spinning icon, and has the Next |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
79 |
button disabled |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
80 |
- once TD has completed, the "Disk Selection" version can be |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
81 |
shown, which has a row of buttons, one for each discovered |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
82 |
disk, along the top of the screen, and a complex set of |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
83 |
widgets which allows the user to partition the disk, at |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
84 |
the bottom. The Next button is enabled. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
85 |
''' |
1439
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
86 |
BUSY_TEXT = N_("Finding Disks") |
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
87 |
BUSY_MARKUP = '<span font_desc="Bold">%s</span>' |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
88 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
89 |
#-------------------------------------------------------------------------- |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
90 |
# API methods |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
91 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
92 |
def __init__(self, builder): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
93 |
''' Initializer method - called from constructor. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
94 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
95 |
Params: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
96 |
- builder, a gtk.Builder object, used to retrieve Gtk+ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
97 |
widgets from Glade XML files. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
98 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
99 |
Returns: Nothing |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
100 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
101 |
global LOGGER |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
102 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
103 |
LOGGER = logging.getLogger(INSTALL_LOGGER_NAME) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
104 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
105 |
super(DiskScreen, self).__init__(builder) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
106 |
self.name = "Disk Screen" |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
107 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
108 |
self._monitor_timeout_id = None |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
109 |
self._td_disks = list() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
110 |
self._selected_disk = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
111 |
self._target_controller = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
112 |
self._wholediskmode = False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
113 |
self._disk_buttons = list() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
114 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
115 |
self._toplevel = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
116 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
117 |
# Top-level widget for the "Finding Disks" version of screen |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
118 |
self._finding_disks_vbox = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
119 |
# Top-level widget for the "Disk Selection" version of screen |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
120 |
self._disk_buttons_hbuttonbox = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
121 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
122 |
self._disksviewport = self.builder.get_object("disksviewport") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
123 |
self._diskselectionhscrollbar = self.builder.get_object( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
124 |
"diskselectionhscrollbar") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
125 |
self._diskerrorimage = self.builder.get_object("diskerrorimage") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
126 |
self._diskwarningimage = self.builder.get_object("diskwarningimage") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
127 |
self._diskstatuslabel = self.builder.get_object("diskstatuslabel") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
128 |
self._partitioningvbox = self.builder.get_object("partitioningvbox") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
129 |
self._diskradioalignment = self.builder.get_object( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
130 |
"diskradioalignment") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
131 |
self._diskwarninghbox = self.builder.get_object("diskwarninghbox") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
132 |
self._wholediskradio = self.builder.get_object("wholediskradio") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
133 |
self._partitiondiskradio = self.builder.get_object( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
134 |
"partitiondiskradio") |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
135 |
self._custompartitionbox = self.builder.get_object( |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
136 |
"custompartitionbox") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
137 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
138 |
if None in [self._disksviewport, self._diskselectionhscrollbar, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
139 |
self._diskerrorimage, self._diskwarningimage, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
140 |
self._diskstatuslabel, self._partitioningvbox, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
141 |
self._diskradioalignment, self._diskwarninghbox, |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
142 |
self._wholediskradio, self._partitiondiskradio, |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
143 |
self._custompartitionbox]: |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
144 |
modal_dialog(_("Internal error"), GLADE_ERROR_MSG) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
145 |
raise RuntimeError(GLADE_ERROR_MSG) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
146 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
147 |
# We use this indirection to facilitate different partitioning control |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
148 |
# backends for MBR/fdisk and GPT partition formats |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
149 |
self._fdisk_panel = FdiskPanel(self.builder) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
150 |
self._gpt_panel = GPTPanel(self.builder) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
151 |
self._disk_panel = self._gpt_panel |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
152 |
self._custompartitionbox.pack_start(self._disk_panel.toplevel, |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
153 |
expand=True, fill=True, padding=0) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
154 |
self._icon_theme = gtk.icon_theme_get_default() |
1439
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
155 |
self._busy_label = None |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
156 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
157 |
def enter(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
158 |
''' Show the Disk Screen. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
159 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
160 |
This method is called when the user navigates to this screen |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
161 |
via the Back and Next buttons. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
162 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
163 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
164 |
self._toplevel = self.set_main_window_content("diskselectiontoplevel") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
165 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
166 |
# Screen-specific configuration |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
167 |
self.activate_stage_label("diskselectionstagelabel") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
168 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
169 |
# Initially, hide the Partitioning VBox and Disk selection scrollbar |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
170 |
self._partitioningvbox.hide() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
171 |
self._diskselectionhscrollbar.hide() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
172 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
173 |
if is_discovery_complete(): |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
174 |
self._show_screen_for_td_complete() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
175 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
176 |
self._show_screen_for_td_not_complete() |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
177 |
# Only set one timeout monitor at a time, even if user enters the |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
178 |
# screen multiple times before TD completes |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
179 |
if self._monitor_timeout_id is None: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
180 |
self._monitor_timeout_id = \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
181 |
glib.timeout_add(200, self._td_completion_monitor) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
182 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
183 |
return False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
184 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
185 |
def go_back(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
186 |
''' Perform any checks required before allowing to user to |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
187 |
go back to the previous screen. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
188 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
189 |
Does nothing. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
190 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
191 |
pass |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
192 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
193 |
def validate(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
194 |
''' Validate the user selections before proceeding. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
195 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
196 |
Perform a series of validations on the deleted |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
197 |
disk and the selected partitions, if appropriate. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
198 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
199 |
If the Disk and/or Partitions are not suitable for the install, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
200 |
then display an error dialog and raise an exception. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
201 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
202 |
Raises: NotOkToProceedError |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
203 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
204 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
205 |
LOGGER.info("Starting validation.") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
206 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
207 |
# First, tell the disk panel to tidy up the disk |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
208 |
self._disk_panel.finalize() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
209 |
|
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
210 |
# Validation phases: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
211 |
# 1. Start off by validating the generic stuff such as a disk being |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
212 |
# selected, big enough etc. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
213 |
# |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
214 |
# 2. Then get into the specifics by handing over validation control |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
215 |
# to the disk_panel object for fdisk/gpt specific checks. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
216 |
# |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
217 |
# 3. Validate the logical elements. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
218 |
# |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
219 |
# 4. Throw up misc. warnings (not errors) if space is tight |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
220 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
221 |
engine = InstallEngine.get_instance() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
222 |
doc = engine.data_object_cache |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
223 |
desired_root = doc.get_descendants(name=Target.DESIRED, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
224 |
class_type=Target, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
225 |
max_depth=2, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
226 |
max_count=1, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
227 |
not_found_is_err=True)[0] |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
228 |
# UI only allows 1 disk to be selected, so no need to |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
229 |
# check for multiple selected disks |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
230 |
selected_disk = desired_root.get_first_child(class_type=Disk) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
231 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
232 |
# ERROR #1 - No disk selected |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
233 |
# (UI will prevent this happening, but this check remains |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
234 |
# for completeness.) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
235 |
if selected_disk is None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
236 |
LOGGER.error("No disk selected.") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
237 |
modal_dialog(_("No disk has been selected for " |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
238 |
"Oracle Solaris installation."), |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
239 |
_("Select a disk.")) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
240 |
self._raise_error("No disk selected") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
241 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
242 |
# ERROR #2 - No suitable disk selected |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
243 |
# (TargetController will prevent this happening, but this check remains |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
244 |
# for completeness.) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
245 |
if selected_disk.disk_prop is None or \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
246 |
selected_disk.disk_prop.dev_size is None or \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
247 |
selected_disk.disk_prop.dev_size < \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
248 |
self._target_controller.minimum_target_size: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
249 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
250 |
LOGGER.error("Disk too small.") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
251 |
LOGGER.error("Minimum size is %s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
252 |
self._target_controller.minimum_target_size) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
253 |
if selected_disk.disk_prop is not None and \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
254 |
selected_disk.disk_prop.dev_size is not None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
255 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
256 |
LOGGER.error("Disk size is (%s)." % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
257 |
selected_disk.disk_prop.dev_size) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
258 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
259 |
LOGGER.error("No size info available.") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
260 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
261 |
modal_dialog(_("The selected disk is not suitable for " |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
262 |
"Oracle Solaris installation."), |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
263 |
_("Select another disk.")) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
264 |
self._raise_error("Disk too small") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
265 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
266 |
# ERROR #2.5 - No suitable disk selected |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
267 |
# (TargetController will prevent this happening, but this check remains |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
268 |
# for completeness.) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
269 |
if not self._target_controller._is_block_size_compatible( |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
270 |
selected_disk): |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
271 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
272 |
LOGGER.error("Disk block size incompatible: %d", |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
273 |
selected_disk.geometry.blocksize) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
274 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
275 |
modal_dialog(_("The selected disk has a block size of %d bytes, " |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
276 |
"which is incompatible for Oracle Solaris installation on " |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
277 |
"this system."), |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
278 |
_("Select another disk.")) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
279 |
self._raise_error("Disk block size incompatible") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
280 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
281 |
# ERROR #3 - Tell disk_panel to do its bit if custom partitioning |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
282 |
# selected. For whole disk we trust ZFS to get it right. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
283 |
if selected_disk.whole_disk: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
284 |
pool_size = selected_disk.disk_prop.dev_size |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
285 |
else: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
286 |
try: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
287 |
solaris_partyslice = self._disk_panel.validate() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
288 |
pool_size = solaris_partyslice.size |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
289 |
except NotOkToProceedError as nok: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
290 |
self._raise_error(str(nok)) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
291 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
292 |
# Finish up with the logical section |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
293 |
# Create swap and dump, as required |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
294 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
295 |
(swap_type, swap_size, dump_type, dump_size) = \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
296 |
self._target_controller.calc_swap_dump_size( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
297 |
self._target_controller.minimum_target_size, |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
298 |
pool_size, |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
299 |
swap_included=True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
300 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
301 |
desired_zpool = desired_root.get_descendants(name=ROOT_POOL, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
302 |
class_type=Zpool, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
303 |
not_found_is_err=True)[0] |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
304 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
305 |
if swap_type == TargetController.SWAP_DUMP_ZVOL: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
306 |
desired_zpool.delete_children(name="swap", class_type=Zvol) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
307 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
308 |
swap_zvol = desired_zpool.add_zvol("swap", |
1370
0e49021cc774
6987821 text installer fails on systems with large memory
Karen Tung <Karen.Tung@oracle.com>
parents:
1318
diff
changeset
|
309 |
int(swap_size.get(units=Size.mb_units)), Size.mb_units, |
0e49021cc774
6987821 text installer fails on systems with large memory
Karen Tung <Karen.Tung@oracle.com>
parents:
1318
diff
changeset
|
310 |
use="swap") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
311 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
312 |
if dump_type == TargetController.SWAP_DUMP_ZVOL: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
313 |
desired_zpool.delete_children(name="dump", class_type=Zvol) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
314 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
315 |
dump_zvol = desired_zpool.add_zvol("dump", |
1370
0e49021cc774
6987821 text installer fails on systems with large memory
Karen Tung <Karen.Tung@oracle.com>
parents:
1318
diff
changeset
|
316 |
int(dump_size.get(units=Size.mb_units)), Size.mb_units, |
0e49021cc774
6987821 text installer fails on systems with large memory
Karen Tung <Karen.Tung@oracle.com>
parents:
1318
diff
changeset
|
317 |
use="dump", create_failure_ok=True) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
318 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
319 |
# Add export and export/home, if they do not already exist |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
320 |
export_fs = desired_zpool.get_first_child(name=EXPORT_FS_NAME, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
321 |
class_type=Filesystem) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
322 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
323 |
if export_fs is None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
324 |
desired_zpool.add_filesystem(EXPORT_FS_NAME, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
325 |
mountpoint=EXPORT_FS_MOUNTPOINT) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
326 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
327 |
export_home_fs = desired_zpool.get_first_child( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
328 |
name=EXPORT_HOME_FS_NAME, class_type=Filesystem) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
329 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
330 |
if export_home_fs is None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
331 |
desired_zpool.add_filesystem(EXPORT_HOME_FS_NAME) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
332 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
333 |
# ERROR #4 - Target class final validation |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
334 |
LOGGER.info("Performing Target.final_validation().") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
335 |
errsvc.clear_error_list() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
336 |
if not desired_root.final_validation(): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
337 |
# Certain errors reported by final_validation don't concern us |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
338 |
error_is_fatal = False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
339 |
all_errors = errsvc.get_all_errors() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
340 |
for err in all_errors: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
341 |
if isinstance( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
342 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION], |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
343 |
ShadowPhysical.SliceInUseError): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
344 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
345 |
LOGGER.warn("ShadowPhysical.SliceInUseError - not fatal") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
346 |
LOGGER.warn("Error: mod id %s, type %s", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
347 |
err.get_mod_id(), str(err.get_error_type())) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
348 |
LOGGER.warn("Error value: %s", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
349 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION].value) |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
350 |
elif isinstance( |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
351 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION], |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
352 |
ShadowPhysical.GPTPartitionInUseError): |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
353 |
|
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
354 |
LOGGER.warn("ShadowPhysical.GPTPartitionInUseError " \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
355 |
"- not fatal") |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
356 |
LOGGER.warn("Error: mod id %s, type %s", |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
357 |
err.get_mod_id(), str(err.get_error_type())) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
358 |
LOGGER.warn("Error value: %s", |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
359 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION].value) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
360 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
361 |
error_is_fatal = True |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
362 |
LOGGER.error("Fatal validation error:") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
363 |
LOGGER.error("Error mod id %s, type: %s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
364 |
(err.get_mod_id(), str(err.get_error_type()))) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
365 |
LOGGER.error("Error class: %r" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
366 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION]) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
367 |
LOGGER.error("Error value: %s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
368 |
err.error_data[liberrsvc.ES_DATA_EXCEPTION].value) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
369 |
LOGGER.error("Desired Targets in DOC:\n%s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
370 |
desired_root.get_xml_tree_str()) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
371 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
372 |
if error_is_fatal: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
373 |
modal_dialog(_("Final validation failed."), "%s\n\n%s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
374 |
(_("See log file for details."), DEFAULT_LOG_LOCATION)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
375 |
self._raise_error("final_validation failed") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
376 |
LOGGER.info("final_validation passed.") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
377 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
378 |
# WARNING #1 - disk is smaller than recommended size (whole_disk only) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
379 |
if selected_disk.whole_disk: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
380 |
if selected_disk.disk_prop is None or \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
381 |
selected_disk.disk_prop.dev_size is None or \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
382 |
selected_disk.disk_prop.dev_size < \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
383 |
self._target_controller.recommended_target_size: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
384 |
|
1716
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
385 |
LOGGER.info("Disk smaller than recommended minimum") |
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
386 |
LOGGER.info("Recommended minimum size is %s", |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
387 |
self._target_controller.recommended_target_size) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
388 |
if selected_disk.disk_prop is not None and \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
389 |
selected_disk.disk_prop.dev_size is not None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
390 |
LOGGER.info("Disk size is (%s)", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
391 |
selected_disk.disk_prop.dev_size) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
392 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
393 |
LOGGER.info("No size info available") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
394 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
395 |
ok_to_proceed = modal_dialog(_("The selected disk is " |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
396 |
"smaller than the recommended minimum size."), |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
397 |
_("You may have difficulties upgrading the system " |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
398 |
"software and/or installing and running additional " |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
399 |
"applications."), |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
400 |
two_buttons=True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
401 |
if not ok_to_proceed: |
1716
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
402 |
self._raise_error("Disk smaller than recommended minimum") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
403 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
404 |
# WARNING #2 - Solaris partition is smaller than recommended size |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
405 |
# Identify the correct Solaris Partition or GPTPartition object. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
406 |
# (not whole_disk only) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
407 |
else: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
408 |
if isinstance(solaris_partyslice, Slice): |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
409 |
solaris_partition = solaris_partyslice.parent |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
410 |
else: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
411 |
solaris_partition = solaris_partyslice |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
412 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
413 |
if solaris_partition.size < \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
414 |
self._target_controller.recommended_target_size: |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
415 |
|
1716
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
416 |
LOGGER.info("Partition smaller than recommended minimum") |
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
417 |
LOGGER.info("Recommended minimum size is %s", |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
418 |
self._target_controller.recommended_target_size) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
419 |
LOGGER.info("Partition size is (%s)", solaris_partition.size) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
420 |
|
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
421 |
ok_to_proceed = modal_dialog(_("The selected partition is " |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
422 |
"smaller than the recommended minimum size."), |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
423 |
_("You may have difficulties upgrading the system " |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
424 |
"software and/or installing and running additional " |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
425 |
"applications."), |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
426 |
two_buttons=True) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
427 |
if not ok_to_proceed: |
1716
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
428 |
self._raise_error("Partition smaller than recommended " |
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
429 |
"minimum") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
430 |
|
1298
268fd28dea26
7068118 system after gui-install seems to lack swap entry in vfstab
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1229
diff
changeset
|
431 |
# Save the TargetController in the DOC (used to retrieve the |
268fd28dea26
7068118 system after gui-install seems to lack swap entry in vfstab
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1229
diff
changeset
|
432 |
# minimum_target_size and call setup_vfstab_for_swap()) |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
433 |
profile = doc.volatile.get_first_child( |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
434 |
name="GUI Install", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
435 |
class_type=InstallProfile) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
436 |
if profile is not None: |
1298
268fd28dea26
7068118 system after gui-install seems to lack swap entry in vfstab
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1229
diff
changeset
|
437 |
profile.set_disk_data(self._target_controller) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
438 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
439 |
LOGGER.info("Validation succeeded. Desired Targets in DOC:\n%s", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
440 |
desired_root.get_xml_tree_str()) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
441 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
442 |
#-------------------------------------------------------------------------- |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
443 |
# Signal handler methods |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
444 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
445 |
def diskbutton_toggled(self, toggle_button, disk): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
446 |
''' Signal handler for "toggled" signal in _diskselectionhscrollbar. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
447 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
448 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
449 |
if not toggle_button.get_active(): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
450 |
# We're not interested when the button is being de-activated |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
451 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
452 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
453 |
if self._target_controller is not None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
454 |
try: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
455 |
selected_disks = self._target_controller.select_disk( |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
456 |
disk, use_whole_disk=self._wholediskmode) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
457 |
except SubSizeDiskError as err: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
458 |
self._diskwarningimage.hide() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
459 |
self._diskerrorimage.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
460 |
markup = '<span font_desc="Bold">%s</span>' \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
461 |
% _("This disk is too small") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
462 |
self._diskstatuslabel.set_markup(markup) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
463 |
logging.debug("Selected disk [%s] is too small for " \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
464 |
"installation" % disk.ctd) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
465 |
# Prevent user from proceeding or customisation |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
466 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
467 |
self._partitioningvbox.set_sensitive(False) |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
468 |
# Hide the custom partitioning details |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
469 |
self._disk_panel.hide() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
470 |
self._wholediskradio.set_active(True) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
471 |
return |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
472 |
except BadDiskBlockSizeError as err: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
473 |
self._diskwarningimage.hide() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
474 |
self._diskerrorimage.show() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
475 |
markup = '<span font_desc="Bold">%s</span>' \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
476 |
% _("This disk has an incompatible block size") |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
477 |
self._diskstatuslabel.set_markup(markup) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
478 |
logging.debug("Selected disk [%s] blocksize is not " \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
479 |
"compatible for installation" % disk.ctd) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
480 |
# Prevent user from proceeding or customisation |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
481 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
482 |
self._partitioningvbox.set_sensitive(False) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
483 |
# Hide the custom partitioning details |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
484 |
self._disk_panel.hide() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
485 |
self._wholediskradio.set_active(True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
486 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
487 |
except BadDiskError, err: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
488 |
LOGGER.error("ERROR: TargetController cannot " \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
489 |
"select disk [%s]" % disk.ctd) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
490 |
modal_dialog(_("Internal Error"), "%s\n\n%s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
491 |
(_("See log file for details."), DEFAULT_LOG_LOCATION)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
492 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
493 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
494 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
495 |
self._select_disk_panel() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
496 |
LOGGER.info("Disk [%s] selected" % selected_disks[0]) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
497 |
self._diskwarningimage.hide() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
498 |
self._diskerrorimage.hide() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
499 |
self._diskstatuslabel.set_markup('') |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
500 |
self._partitioningvbox.set_sensitive(True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
501 |
self._display_selected_disk_details() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
502 |
self.set_back_next(back_sensitive=True, next_sensitive=True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
503 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
504 |
def installationdisk_wholediskradio_toggled(self, widget, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
505 |
user_data=None): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
506 |
''' Signal handler for "toggled" event in _wholediskradio. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
507 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
508 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
509 |
if not widget.get_active(): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
510 |
# We're not interested when the button is being de-activated |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
511 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
512 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
513 |
self._wholediskmode = True |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
514 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
515 |
selected_disk = self._target_controller.desired_disks[0] |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
516 |
# Re-select the disk, this time with use_whole_disk=True |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
517 |
try: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
518 |
selected_disks = self._target_controller.select_disk( |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
519 |
selected_disk, |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
520 |
use_whole_disk=self._wholediskmode) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
521 |
except BadDiskError, err: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
522 |
LOGGER.error("ERROR: TargetController cannot " \ |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
523 |
"select disk [%s]" % selected_disk.ctd) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
524 |
modal_dialog(_("Internal Error"), "%s\n\n%s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
525 |
(_("See log file for details."), DEFAULT_LOG_LOCATION)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
526 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
527 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
528 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
529 |
self._select_disk_panel() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
530 |
LOGGER.info("Disk [%s] selected", selected_disk.ctd) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
531 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
532 |
self._display_selected_disk_details() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
533 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
534 |
def installationdisk_partitiondiskradio_toggled(self, widget, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
535 |
user_data=None): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
536 |
''' Signal handler for "toggled" event in _partitiondiskradio. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
537 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
538 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
539 |
if not widget.get_active(): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
540 |
# We're not interested when the button is being de-activated |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
541 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
542 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
543 |
self._wholediskmode = False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
544 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
545 |
selected_disk = self._target_controller.desired_disks[0] |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
546 |
# Re-select the disk, this time with use_whole_disk=False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
547 |
try: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
548 |
selected_disks = self._target_controller.select_disk( |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
549 |
selected_disk, |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
550 |
use_whole_disk=self._wholediskmode) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
551 |
except BadDiskError, err: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
552 |
LOGGER.error("ERROR: TargetController cannot " \ |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
553 |
"select disk [%s]" % selected_disk.ctd) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
554 |
modal_dialog(_("Internal Error"), "%s\n\n%s" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
555 |
(_("See log file for details."), DEFAULT_LOG_LOCATION)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
556 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
557 |
return |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
558 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
559 |
self._select_disk_panel() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
560 |
LOGGER.info("Disk [%s] selected" % selected_disk.ctd) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
561 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
562 |
self._display_selected_disk_details() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
563 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
564 |
def viewport_adjustment_changed(self, adjustment, scrollbar): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
565 |
''' Signal handler for "changed" event in _diskselectionhscrollbar. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
566 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
567 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
568 |
lower = adjustment.get_lower() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
569 |
upper = adjustment.get_upper() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
570 |
pagesize = adjustment.get_page_size() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
571 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
572 |
if (upper - lower) <= pagesize: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
573 |
scrollbar.hide() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
574 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
575 |
scrollbar.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
576 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
577 |
#-------------------------------------------------------------------------- |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
578 |
# Private methods |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
579 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
580 |
def _process_td_results(self): |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
581 |
''' |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
582 |
If TD completed successfully, the attributes |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
583 |
self._td_disks and self._target_controller will be set. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
584 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
585 |
In any event self._td_complete will be set to True. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
586 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
587 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
588 |
self._td_disks = list() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
589 |
self._target_controller = None |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
590 |
self._selected_disk = None |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
591 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
592 |
# Fetch the Disk objects from "discovered targets" in DOC |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
593 |
engine = InstallEngine.get_instance() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
594 |
doc = engine.data_object_cache |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
595 |
discovered_root = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
596 |
try: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
597 |
discovered_root = doc.get_descendants(name=Target.DISCOVERED, |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
598 |
class_type=Target, max_depth=2, max_count=1, |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
599 |
not_found_is_err=True)[0] |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
600 |
except ObjectNotFoundError, err: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
601 |
LOGGER.error("TD didn't create 'discovered' Target: [%s]" % \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
602 |
str(err)) |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
603 |
return |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
604 |
LOGGER.info("TD XML:\n%s" % discovered_root.get_xml_tree_str()) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
605 |
try: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
606 |
self._td_disks = discovered_root.get_children(class_type=Disk, |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
607 |
not_found_is_err=True) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
608 |
except ObjectNotFoundError, err: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
609 |
LOGGER.error("No Disks in 'discovered' Target: [%s]" % \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
610 |
str(err)) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
611 |
LOGGER.error("TD XML:\n%s" % \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
612 |
discovered_root.get_xml_tree_str()) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
613 |
return |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
614 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
615 |
# Only retain those disks that match the user's selected disk types |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
616 |
profile = doc.volatile.get_first_child(name="GUI Install", |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
617 |
class_type=InstallProfile) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
618 |
if profile is None: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
619 |
raise RuntimeError("INTERNAL ERROR: Unable to retrieve " |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
620 |
"InstallProfile from DataObjectCache") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
621 |
LOGGER.debug("Including local disks? : %s", profile.show_local) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
622 |
LOGGER.debug("Including iSCSI disks? : %s", profile.show_iscsi) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
623 |
matching_disks = list() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
624 |
for disk in self._td_disks: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
625 |
if profile.show_iscsi and \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
626 |
disk.disk_prop is not None and \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
627 |
disk.disk_prop.dev_type == "iSCSI": |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
628 |
matching_disks.append(disk) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
629 |
LOGGER.debug("Including (iSCSI) disk: %s", disk.ctd) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
630 |
continue |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
631 |
if profile.show_local and \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
632 |
(disk.disk_prop is None or \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
633 |
disk.disk_prop.dev_type != "iSCSI"): |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
634 |
matching_disks.append(disk) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
635 |
LOGGER.debug("Including (non-iSCSI) disk: %s", disk.ctd) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
636 |
continue |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
637 |
LOGGER.debug("Excluding disk: %s", disk.ctd) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
638 |
self._td_disks = matching_disks |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
639 |
if not self._td_disks: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
640 |
LOGGER.error("No discovered disks match user criteria") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
641 |
LOGGER.error("Criteria: local disks? : %s", profile.show_local) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
642 |
LOGGER.error("Criteria: iSCSI disks? : %s", profile.show_iscsi) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
643 |
return |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
644 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
645 |
# Set up the TargetController |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
646 |
LOGGER.info("TD found %d disks matching criteria", len(self._td_disks)) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
647 |
self._target_controller = TargetController(doc) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
648 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
649 |
# First, let TargetController choose an initially-selected disk, |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
650 |
# as per its rules. |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
651 |
try: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
652 |
# Note: we are assuming that TargetController.initialize() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
653 |
# selects a disk not in whole_disk mode |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
654 |
selected_disks = self._target_controller.initialize() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
655 |
except BadDiskError, err: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
656 |
LOGGER.error("TargetController failed to select an " |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
657 |
"initial disk: [%s]", err) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
658 |
return |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
659 |
self._selected_disk = selected_disks[0] |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
660 |
LOGGER.info("Disk [%s] selected" % self._selected_disk.ctd) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
661 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
662 |
# If TargetController's choice for initial disk does not match |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
663 |
# users choices (iSCSI vs local), then select the first remaining |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
664 |
# suitable disk |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
665 |
for td_disk in self._td_disks: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
666 |
if td_disk.name_matches(self._selected_disk): |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
667 |
# TC's initial disk is in our filtered list - carry on. |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
668 |
break |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
669 |
else: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
670 |
LOGGER.debug("TargetController's initial disk does not match " |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
671 |
"criteria, so picking a new one") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
672 |
for td_disk in self._td_disks: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
673 |
try: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
674 |
selected_disks = self._target_controller.select_disk( |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
675 |
td_disk, use_whole_disk=self._wholediskmode) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
676 |
except SubSizeDiskError as err: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
677 |
LOGGER.debug("TC says disk is too small: [%s] [%s]", |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
678 |
td_disk, err) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
679 |
continue |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
680 |
except BadDiskError, err: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
681 |
LOGGER.debug("TC says disk is not suitable: [%s] [%s]", |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
682 |
td_disk, err) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
683 |
continue |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
684 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
685 |
self._selected_disk = selected_disks[0] |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
686 |
LOGGER.info("Disk [%s] selected" % self._selected_disk.ctd) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
687 |
break |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
688 |
else: |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
689 |
LOGGER.error("NONE OF THE REAMINING DISKS ARE SUITABLE") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
690 |
self._selected_disk = None |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
691 |
return |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
692 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
693 |
LOGGER.info("TD AND TC FINISHED SUCCESSFULLY!") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
694 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
695 |
def _set_screen_titles(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
696 |
# NB This messing about is because we want to re-use the existing |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
697 |
# localized size formatting string from C, but the Python formatting |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
698 |
# options are different |
1716
0cea9255024f
7097153 Advice seems oddly small for solaris partition
Geoffrey Hart <geoffrey.hart@oracle.com>
parents:
1644
diff
changeset
|
699 |
size_str = _("Recommended minimum: %lldGB Minimum: %.1fGB") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
700 |
size_str = size_str.replace('%lld', '%s') |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
701 |
size_str = size_str.replace('%.1f', '%s') |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
702 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
703 |
if self._target_controller is None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
704 |
# Blank out the size values until they are available |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
705 |
size_str = size_str.replace('%s', '') |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
706 |
else: |
1752
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
707 |
rec_orig = \ |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
708 |
self._target_controller.recommended_target_size.get( |
1752
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
709 |
units=Size.gb_units) |
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
710 |
rec_roundup = (ceil(rec_orig * 10)) * 0.1 |
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
711 |
rec_size = locale.format('%.1f', rec_roundup) |
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
712 |
min_orig = \ |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
713 |
self._target_controller.minimum_target_size.get( |
1752
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
714 |
units=Size.gb_units) |
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
715 |
min_roundup = (ceil(min_orig * 10)) * 0.1 |
5c51d42f1aaf
7163694 Interactive installer's display of min/rec install device size display should be rounded up
swati sarraf <swati.sarraf@oracle.com>
parents:
1716
diff
changeset
|
716 |
min_size = locale.format('%.1f', min_roundup) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
717 |
size_str = size_str % (rec_size, min_size) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
718 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
719 |
self.set_titles(_("Disk Selection"), |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
720 |
_("Where should Oracle Solaris be installed?"), |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
721 |
size_str) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
722 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
723 |
def _show_screen_for_td_not_complete(self): |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
724 |
self._diskstatuslabel.set_markup('') |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
725 |
self._set_screen_titles() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
726 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
727 |
# Only create the widgets which don't come from Glade once |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
728 |
if self._finding_disks_vbox is None: |
1439
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
729 |
self._finding_disks_vbox, self._busy_label = \ |
1401
d146dce1de3d
7080703 [A11Y] several accessibility regressions within the new GUI Installer
John Fischer <john.fischer@oracle.com>
parents:
1370
diff
changeset
|
730 |
self._create_finding_disks_vbox() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
731 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
732 |
empty_container(self._disksviewport) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
733 |
self._disksviewport.add(self._finding_disks_vbox) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
734 |
self._disksviewport.modify_bg(gtk.STATE_NORMAL, COLOR_WHITE) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
735 |
self._disksviewport.show_all() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
736 |
self._toplevel.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
737 |
|
1439
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
738 |
self._busy_label.grab_focus() |
1401
d146dce1de3d
7080703 [A11Y] several accessibility regressions within the new GUI Installer
John Fischer <john.fischer@oracle.com>
parents:
1370
diff
changeset
|
739 |
|
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
740 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
741 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
742 |
def _show_screen_for_td_complete(self): |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
743 |
if not get_td_results_state(): |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
744 |
self._process_td_results() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
745 |
set_td_results_state(True) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
746 |
|
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
747 |
self._diskstatuslabel.set_markup('') |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
748 |
|
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
749 |
# If an error occurred in TD or TC, then inform the user |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
750 |
# ERROR #1 - TD didn't find any Disks |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
751 |
# ERROR #2 - TC couldn't select an initial Disk |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
752 |
error_occurred = False |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
753 |
if not self._td_disks or self._selected_disk is None: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
754 |
error_occurred = True |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
755 |
markup = '<span font_desc="Bold">%s</span>' % \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
756 |
_("No suitable disks were found.") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
757 |
self._diskstatuslabel.set_markup(markup) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
758 |
self._diskerrorimage.show() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
759 |
|
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
760 |
self._set_screen_titles() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
761 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
762 |
# Recreate the disk buttons each time, as each execution of |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
763 |
# TD can find different disks |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
764 |
self._disk_buttons_hbuttonbox = \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
765 |
self._create_disk_buttons_hbuttonbox() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
766 |
self._create_disk_buttons() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
767 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
768 |
empty_container(self._disksviewport) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
769 |
self._disksviewport.add(self._disk_buttons_hbuttonbox) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
770 |
self._disksviewport.modify_bg(gtk.STATE_NORMAL, COLOR_WHITE) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
771 |
self._disksviewport.show_all() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
772 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
773 |
# Hook up the scrollbar to the viewport |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
774 |
viewportadjustment = self._diskselectionhscrollbar.get_adjustment() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
775 |
gobject.GObject.connect(viewportadjustment, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
776 |
"changed", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
777 |
self.viewport_adjustment_changed, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
778 |
self._diskselectionhscrollbar) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
779 |
self._disksviewport.set_hadjustment(viewportadjustment) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
780 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
781 |
if not error_occurred: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
782 |
# Match the currently selected disk to one of the disk |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
783 |
# radio buttons and make that button active |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
784 |
active_button = None |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
785 |
for button in self._disk_buttons: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
786 |
td_disk = gobject.GObject.get_data(button, "Disk") |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
787 |
if td_disk.name_matches(self._selected_disk): |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
788 |
button.set_active(True) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
789 |
active_button = button |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
790 |
break |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
791 |
else: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
792 |
# _process_td_results should have prevented this |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
793 |
raise RuntimeError("INTERNAL ERROR: selected disk does not" |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
794 |
" match any disk icon") |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
795 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
796 |
# Set whole disk/partition disk radio button to initial setting |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
797 |
if self._wholediskmode: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
798 |
self._wholediskradio.set_active(True) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
799 |
else: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
800 |
self._partitiondiskradio.set_active(True) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
801 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
802 |
# Show the disk partitioning radio buttons and associated widgets |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
803 |
self._diskradioalignment.show_all() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
804 |
|
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
805 |
self._display_selected_disk_details() |
1401
d146dce1de3d
7080703 [A11Y] several accessibility regressions within the new GUI Installer
John Fischer <john.fischer@oracle.com>
parents:
1370
diff
changeset
|
806 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
807 |
if active_button: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
808 |
active_button.grab_focus() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
809 |
|
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
810 |
self._partitioningvbox.show() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
811 |
|
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
812 |
self._toplevel.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
813 |
|
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
814 |
if error_occurred: |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
815 |
self.set_back_next(back_sensitive=True, next_sensitive=False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
816 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
817 |
self.set_back_next(back_sensitive=True, next_sensitive=True) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
818 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
819 |
def _td_completion_monitor(self): |
1229
891fd1030a86
7059258 gui-install hangs while a URL is opened from an clicking on an image
John Fischer <john.fischer@oracle.com>
parents:
1204
diff
changeset
|
820 |
''' |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
821 |
Monitors the completion status of target discovery and shows |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
822 |
the disk & partitioning controls if this screen is mapped. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
823 |
''' |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
824 |
if is_discovery_complete(): |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
825 |
if (self._toplevel is not None) and \ |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
826 |
(self._toplevel.flags() & gtk.MAPPED): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
827 |
self._show_screen_for_td_complete() |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
828 |
self._monitor_timeout_id = None |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
829 |
return False |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
830 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
831 |
return True |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
832 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
833 |
def _display_selected_disk_details(self): |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
834 |
self._select_disk_panel() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
835 |
selected_disks = self._target_controller.desired_disks |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
836 |
if selected_disks: |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
837 |
if self._wholediskmode: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
838 |
# Show "Entire disk will be erased" warning |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
839 |
self._diskwarninghbox.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
840 |
|
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
841 |
# Hide the custom disk partitioning details. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
842 |
self._disk_panel.hide() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
843 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
844 |
# Hide "Entire disk will be erased" warning |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
845 |
self._diskwarninghbox.hide() |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
846 |
self._disk_panel.display(selected_disks[0], |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
847 |
self._target_controller) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
848 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
849 |
def _create_finding_disks_vbox(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
850 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
851 |
Creates the new widgets required for the "Finding Disks..." |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
852 |
version of the screen. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
853 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
854 |
This method should only be called once per execution |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
855 |
of the app. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
856 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
857 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
858 |
finding_disks_vbox = gtk.VBox(homogeneous=False, spacing=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
859 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
860 |
label = gtk.Label() |
1439
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
861 |
markup_str = DiskScreen.BUSY_MARKUP % _(DiskScreen.BUSY_TEXT) |
7375801f1f12
7085402 gui-install introduces localiziable string with non-swappable parameters
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1401
diff
changeset
|
862 |
label.set_markup(markup_str) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
863 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
864 |
busyimage = gtk.image_new_from_file(IMAGE_DIR + "/" |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
865 |
"gnome-spinner.gif") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
866 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
867 |
finding_disks_vbox.pack_start(label, expand=False, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
868 |
fill=False, padding=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
869 |
finding_disks_vbox.pack_end(busyimage, expand=False, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
870 |
fill=False, padding=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
871 |
|
1401
d146dce1de3d
7080703 [A11Y] several accessibility regressions within the new GUI Installer
John Fischer <john.fischer@oracle.com>
parents:
1370
diff
changeset
|
872 |
return finding_disks_vbox, label |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
873 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
874 |
def _create_disk_button_icon(self, disk): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
875 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
876 |
Creates a disk button icon appropriate for the specificed disk. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
877 |
''' |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
878 |
if disk.disk_prop is not None and disk.disk_prop.dev_type == "iSCSI": |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
879 |
# use our own iSCSI disk icon |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
880 |
disk_pixbuf = gtk.gdk.pixbuf_new_from_file( |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
881 |
os.path.join(IMAGE_DIR, "iscsi_disk.png")) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
882 |
disk_width = disk_pixbuf.get_width() |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
883 |
disk_height = disk_pixbuf.get_height() |
1318
cf440b5a6594
7021433 Changes needed to GUI to add support for CRO information
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1307
diff
changeset
|
884 |
else: |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
885 |
# use our own generic disk icon |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
886 |
disk_pixbuf = gtk.gdk.pixbuf_new_from_file( |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
887 |
os.path.join(IMAGE_DIR, "generic_disk.png")) |
1318
cf440b5a6594
7021433 Changes needed to GUI to add support for CRO information
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1307
diff
changeset
|
888 |
disk_width = disk_pixbuf.get_width() |
cf440b5a6594
7021433 Changes needed to GUI to add support for CRO information
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
1307
diff
changeset
|
889 |
disk_height = disk_pixbuf.get_height() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
890 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
891 |
emblem_iconinfo = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
892 |
# Apply any additional emblems appropriate for the disk |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
893 |
# Too small or incompatible block_size |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
894 |
if disk.disk_prop.dev_size < \ |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
895 |
self._target_controller.minimum_target_size or \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
896 |
not self._target_controller._is_block_size_compatible(disk): |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
897 |
emblem_iconinfo = self._icon_theme.lookup_icon("dialog-error", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
898 |
16, 0) |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
899 |
# No readable partition table / disk label |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
900 |
elif disk.label is None: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
901 |
emblem_iconinfo = self._icon_theme.lookup_icon("dialog-warning", |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
902 |
16, 0) |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
903 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
904 |
if emblem_iconinfo is not None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
905 |
emblem_filename = emblem_iconinfo.get_filename() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
906 |
emblem_pixbuf = gtk.gdk.pixbuf_new_from_file(emblem_filename) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
907 |
emblem_width = emblem_pixbuf.get_width() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
908 |
emblem_height = emblem_pixbuf.get_height() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
909 |
emblem_pixbuf.composite(disk_pixbuf, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
910 |
disk_width - emblem_width, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
911 |
disk_height - emblem_height, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
912 |
emblem_width, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
913 |
emblem_height, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
914 |
disk_width - emblem_width, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
915 |
disk_height - emblem_height, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
916 |
1, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
917 |
1, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
918 |
gtk.gdk.INTERP_BILINEAR, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
919 |
192) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
920 |
disk_image = gtk.image_new_from_pixbuf(disk_pixbuf) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
921 |
disk_image.show() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
922 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
923 |
return disk_image |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
924 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
925 |
def _set_disk_button_icon(self, button, image): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
926 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
927 |
Sets the icon for button to image |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
928 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
929 |
vbox = button.get_data("iconvbox") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
930 |
oldimage = button.get_data("icon") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
931 |
if oldimage is not None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
932 |
oldimage.destroy() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
933 |
vbox.pack_start(image, True, True, 0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
934 |
button.set_data("icon", image) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
935 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
936 |
def _create_disk_buttons(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
937 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
938 |
Creates the graphical disk selection radio button widgets |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
939 |
''' |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
940 |
self._disk_buttons = list() |
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
941 |
first_button = None |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
942 |
for td_disk in self._td_disks: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
943 |
name, summary = td_disk.get_details() |
1644
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
944 |
|
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
945 |
# If applicable, also show the iSCSI LUN for this disk in the |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
946 |
# tooltip, by looking at the saved device->LUN dictionary in |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
947 |
# the Iscsi obj in DOC |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
948 |
if td_disk.ctd is not None: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
949 |
doc = InstallEngine.get_instance().doc |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
950 |
iscsi = doc.volatile.get_first_child(name=ISCSI_LABEL, |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
951 |
class_type=Iscsi) |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
952 |
if iscsi: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
953 |
if td_disk.ctd in iscsi.iscsi_dict: |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
954 |
summary += "\n" + \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
955 |
_("iSCSI LUN : %s") % \ |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
956 |
iscsi.iscsi_dict[td_disk.ctd].lun_num |
e827d1934114
PSARC/2012/023 Interactive Installation to iSCSI
Drew Fisher <drew.fisher@oracle.com>
parents:
1623
diff
changeset
|
957 |
|
1204
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
958 |
label = gtk.Label(name) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
959 |
if first_button is None: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
960 |
button = gtk.RadioButton() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
961 |
first_button = button |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
962 |
else: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
963 |
# Add subsequent buttons to the same RadioButton group |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
964 |
# as the first one |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
965 |
button = gtk.RadioButton(group=first_button) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
966 |
button.set_mode(False) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
967 |
button.set_relief(gtk.RELIEF_NONE) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
968 |
button.set_tooltip_text(summary) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
969 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
970 |
# Attach the Disk object to the RadioButton for future retrieval |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
971 |
gobject.GObject.set_data(button, "Disk", td_disk) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
972 |
# Save the buttons so we can activate them later |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
973 |
self._disk_buttons.append(button) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
974 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
975 |
align = gtk.Alignment(0.5, 0.5, 0, 0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
976 |
button.add(align) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
977 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
978 |
vbox = gtk.VBox(homogeneous=False, spacing=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
979 |
align.add(vbox) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
980 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
981 |
vbox.pack_end(label, expand=False, fill=False, padding=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
982 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
983 |
button.set_data("iconvbox", vbox) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
984 |
self._set_disk_button_icon(button, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
985 |
self._create_disk_button_icon(td_disk)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
986 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
987 |
self._disk_buttons_hbuttonbox.pack_start(button, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
988 |
expand=False, fill=False, padding=0) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
989 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
990 |
button.connect("toggled", |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
991 |
self.diskbutton_toggled, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
992 |
td_disk) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
993 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
994 |
# Update disk button icons if icon theme changes |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
995 |
self._icon_theme.connect("changed", self._icon_theme_changed) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
996 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
997 |
def _create_disk_buttons_hbuttonbox(self): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
998 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
999 |
Creates the horizontal container widget for disk buttons. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1000 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1001 |
This method should only be called once per execution |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1002 |
of the app. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1003 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1004 |
disk_buttons_hbuttonbox = gtk.HButtonBox() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1005 |
disk_buttons_hbuttonbox.set_spacing(36) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1006 |
disk_buttons_hbuttonbox.set_layout(gtk.BUTTONBOX_START) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1007 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1008 |
return disk_buttons_hbuttonbox |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1009 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1010 |
def _icon_theme_changed(self, theme): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1011 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1012 |
Signal handler for when icon theme is changed. Updates disk |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1013 |
button icons to correspond to new icon theme style |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1014 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1015 |
for button in self._disk_buttons: |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1016 |
disk = button.get_data("Disk") |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1017 |
self._set_disk_button_icon(button, |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1018 |
self._create_disk_button_icon(disk)) |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1019 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1020 |
def _raise_error(self, msg): |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1021 |
''' Raise the NotOkToProceed exception. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1022 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1023 |
Before raising the exception, we re-display the current disk's |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1024 |
details. This is mainly relevant for the Fdisk panel, to |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1025 |
ensure the partitions are setup for the user to continue |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1026 |
editing them, once the dialog has been dismissed. |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1027 |
''' |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1028 |
self._display_selected_disk_details() |
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1029 |
|
5c7590b24780
7050438 Update GUI Install to use CUD
Dermot <Dermot.McCluskey@Oracle.COM>
parents:
diff
changeset
|
1030 |
raise NotOkToProceedError(msg) |
1623
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1031 |
|
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1032 |
def _select_disk_panel(self): |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1033 |
''' Sets the correct disk_panel object type (gpt_panel or fdisk_panel) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1034 |
for the currently selected disk. |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1035 |
''' |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1036 |
selected_disks = self._target_controller.desired_disks |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1037 |
if not selected_disks: |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1038 |
return |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1039 |
|
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1040 |
selected_disk = selected_disks[0] |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1041 |
if selected_disk.label == "GPT" and \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1042 |
not isinstance(self._disk_panel, GPTPanel): |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1043 |
self._disk_panel.hide() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1044 |
self._custompartitionbox.remove(self._disk_panel.toplevel) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1045 |
self._disk_panel = self._gpt_panel |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1046 |
self._custompartitionbox.pack_start(self._disk_panel.toplevel, |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1047 |
expand=True, fill=True, padding=0) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1048 |
elif selected_disk.label == "VTOC" and \ |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1049 |
not isinstance(self._disk_panel, FdiskPanel): |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1050 |
self._disk_panel.hide() |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1051 |
self._custompartitionbox.remove(self._disk_panel.toplevel) |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1052 |
self._disk_panel = self._fdisk_panel |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1053 |
self._custompartitionbox.pack_start(self._disk_panel.toplevel, |
cb56a2fb4925
PSARC 2012/074 UEFI/GRUB2/Large Disk Boot (UGLDB) (Install phase II):
Niall Power <niall.power@oracle.com>
parents:
1532
diff
changeset
|
1054 |
expand=True, fill=True, padding=0) |