author | Ethan Quach <Ethan.Quach@sun.com> |
Tue, 31 May 2011 14:21:09 -0700 | |
changeset 1160 | 6f7e708c38ec |
parent 1151 | 95413393ef67 |
child 1161 | 5c1b6d445efc |
permissions | -rw-r--r-- |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
1 |
#!/usr/bin/python |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
2 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
3 |
# CDDL HEADER START |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
4 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
5 |
# The contents of this file are subject to the terms of the |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
6 |
# Common Development and Distribution License (the "License"). |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
7 |
# You may not use this file except in compliance with the License. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
8 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
9 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
10 |
# or http://www.opensolaris.org/os/licensing. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
11 |
# See the License for the specific language governing permissions |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
12 |
# and limitations under the License. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
13 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
14 |
# When distributing Covered Code, include this CDDL HEADER in each |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
15 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
16 |
# If applicable, add the following below this CDDL HEADER, with the |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
17 |
# fields enclosed by brackets "[]" replaced with your own identifying |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
18 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
19 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
20 |
# CDDL HEADER END |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
21 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
22 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
23 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
24 |
# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
25 |
# |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
26 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
27 |
'''Python package for icts''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
28 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
29 |
__all__ = ["apply_sysconfig", "boot_archive", "cleanup_cpio_install", |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
30 |
"common", "create_snapshot", "device_config", |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
31 |
"generate_sc_profile", "initialize_smf", |
1151
95413393ef67
7038120 Update Auto Installer to use CUD
Darren Kenny <Darren.Kenny@Oracle.COM>
parents:
1099
diff
changeset
|
32 |
"ips", "setup_swap", "transfer_files", "update_dumpadm"] |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
33 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
34 |
from solaris_install.engine import InstallEngine |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
35 |
from solaris_install.engine.checkpoint import AbstractCheckpoint |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
36 |
from solaris_install.target import Target |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
37 |
from solaris_install.target.logical import BE |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
38 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
39 |
# Define some ICT constants |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
40 |
BOOTADM = '/usr/sbin/bootadm' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
41 |
DEVFSADM = '/usr/sbin/devfsadm' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
42 |
DUMPADM_CONF = 'etc/dumpadm.conf' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
43 |
DUMPADM_SAVDIR = 'DUMPADM_SAVDIR' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
44 |
GENERIC_XML = 'etc/svc/profile/generic.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
45 |
GEN_LTD_NET_XML = 'generic_limited_net.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
46 |
GLOBAL_DB = 'lib/svc/seed/global.db' |
1160
6f7e708c38ec
16257 Support for zones configuration and installation should be included in AI
Ethan Quach <Ethan.Quach@sun.com>
parents:
1151
diff
changeset
|
47 |
ZONE_DB = 'lib/svc/seed/nonglobal.db' |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
48 |
INETD_XML = 'inetd_generic.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
49 |
INETD_SVCS_XML = 'etc/svc/profile/inetd_services.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
50 |
KBD_DEFAULT = 'US-English' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
51 |
KBD_DEV = '/dev/kbd' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
52 |
KBD_LAYOUT_FILE = '/usr/share/lib/keytables/type_6/kbd_layouts' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
53 |
MNTTAB = 'etc/mnttab' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
54 |
NAME_SVC_XML = 'etc/svc/profile/name_service.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
55 |
NS_DNS_XML = 'ns_dns.xml' |
1160
6f7e708c38ec
16257 Support for zones configuration and installation should be included in AI
Ethan Quach <Ethan.Quach@sun.com>
parents:
1151
diff
changeset
|
56 |
NS_FILES_XML = 'ns_files.xml' |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
57 |
PKG = '/usr/bin/pkg' |
1160
6f7e708c38ec
16257 Support for zones configuration and installation should be included in AI
Ethan Quach <Ethan.Quach@sun.com>
parents:
1151
diff
changeset
|
58 |
PLATFORM_XML = 'etc/svc/profile/platform.xml' |
6f7e708c38ec
16257 Support for zones configuration and installation should be included in AI
Ethan Quach <Ethan.Quach@sun.com>
parents:
1151
diff
changeset
|
59 |
PLATFORM_NONE_XML = 'platform_none.xml' |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
60 |
PROFILE_DEST = 'etc/svc/profile/site' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
61 |
PROFILE_SITE = 'etc/svc/profile/site.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
62 |
REPO_DB = 'etc/svc/repository.db' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
63 |
SC_PROFILE = 'etc/svc/profile/sc_profile.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
64 |
SC_TEMPLATE = 'usr/share/install/sc_template.xml' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
65 |
SVCCFG = '/usr/sbin/svccfg' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
66 |
SVCCFG_DTD = 'SVCCFG_DTD' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
67 |
SVCCFG_REPOSITORY = 'SVCCFG_REPOSITORY' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
68 |
SVC_BUNDLE = 'usr/share/lib/xml/dtd/service_bundle.dtd.1' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
69 |
SVC_REPO = 'etc/svc/repository.db' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
70 |
SYS = 'sys' |
1151
95413393ef67
7038120 Update Auto Installer to use CUD
Darren Kenny <Darren.Kenny@Oracle.COM>
parents:
1099
diff
changeset
|
71 |
VFSTAB = 'etc/vfstab' |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
72 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
73 |
# Variables associated with the package image |
1099
9685582c2e8a
7039499 Need to change slim_source for IPS API_VERSION change of 57 for snv_165
Drew Fisher <drew.fisher@oracle.com>
parents:
1055
diff
changeset
|
74 |
CLIENT_API_VERSION = 57 |
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
75 |
DEF_REPO_URI = "http://pkg.oracle.com/solaris/release" |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
76 |
PKG_CLIENT_NAME = "ICT" |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
77 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
78 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
79 |
class ICTError(Exception): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
80 |
'''Base class for ict specific errors''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
81 |
pass |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
82 |
|
1055
26f4df2e408e
6255 ICT - Use more flexible method, than install-finish to invoke ICT (fix pep8 )
Mary Ding <mary.ding@oracle.com>
parents:
1041
diff
changeset
|
83 |
|
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
84 |
class ICTApplySysConfigError(ICTError): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
85 |
'''Errors thrown by apply_sysconfig''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
86 |
pass |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
87 |
|
1055
26f4df2e408e
6255 ICT - Use more flexible method, than install-finish to invoke ICT (fix pep8 )
Mary Ding <mary.ding@oracle.com>
parents:
1041
diff
changeset
|
88 |
|
1041
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
89 |
class ICTBaseClass(AbstractCheckpoint): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
90 |
'''ICTBaseClass is the abstract base class for the ICTs. It |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
91 |
provides basic functionality for all ICTs. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
92 |
''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
93 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
94 |
def __init__(self, name): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
95 |
'''Initializes the class |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
96 |
Parameters: |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
97 |
-name - this arg is required by the AbstractCheckpoint |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
98 |
and is not used by the ict checkpoint. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
99 |
''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
100 |
super(ICTBaseClass, self).__init__(name) |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
101 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
102 |
# The DOC instance from the engine |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
103 |
self.doc = InstallEngine.get_instance().data_object_cache |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
104 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
105 |
# The boot environment name for the target |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
106 |
self.boot_env = None |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
107 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
108 |
# The install target object and target directory |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
109 |
self.target = None |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
110 |
self.target_dir = None |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
111 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
112 |
def parse_doc(self): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
113 |
'''Get the parameters needed by the ICTs''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
114 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
115 |
# Get the target that holds the boot environment |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
116 |
self.target = self.doc.get_descendants(name=Target.DESIRED, |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
117 |
class_type=Target, |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
118 |
not_found_is_err=True)[0] |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
119 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
120 |
# Get the destination mountpoint |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
121 |
self.boot_env = self.target.get_descendants(class_type=BE, |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
122 |
max_count=1, |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
123 |
not_found_is_err=True)[0] |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
124 |
# Get the target directory |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
125 |
self.target_dir = self.boot_env.mountpoint |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
126 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
127 |
def execute(self, dry_run=False): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
128 |
'''The AbstractCheckpoint requires this method. It is |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
129 |
implemented uniquely in each ICT. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
130 |
''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
131 |
pass |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
132 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
133 |
def get_progress_estimate(self): |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
134 |
''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
135 |
The AbstractCheckpoint class requires this method |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
136 |
in sub-classes. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
137 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
138 |
This returns an estimate of how long the execute() method |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
139 |
will take to run. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
140 |
|
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
141 |
For most ICTs, 1 is an accurate estimation. For those |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
142 |
that need a different value will implement their own version |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
143 |
of get_progress_estimate. |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
144 |
''' |
7e44b50b28cb
6255:ICT - Use more flexible method, than install-finish to invoke ICT
Ginnie Wray<virginia.wray@oracle.com>
parents:
diff
changeset
|
145 |
return 1 |