usr/src/cmd/system-config/__init__.py
changeset 1160 6f7e708c38ec
parent 1155 4eb6bb7bb4a0
child 1164 65b1a3a35195
equal deleted inserted replaced
1159:fbde90ccfae9 1160:6f7e708c38ec
    35 from optparse import OptionParser
    35 from optparse import OptionParser
    36 import os
    36 import os
    37 import signal
    37 import signal
    38 import sys
    38 import sys
    39 
    39 
       
    40 from solaris_install import engine
    40 from solaris_install.data_object import DataObject
    41 from solaris_install.data_object import DataObject
    41 from solaris_install import engine
    42 from solaris_install.data_object.data_dict import DataObjectDict
    42 from solaris_install.engine import InstallEngine, RollbackError
    43 from solaris_install.engine import InstallEngine, RollbackError
       
    44 from solaris_install.ict.apply_sysconfig import APPLY_SYSCONFIG_DICT, \
       
    45     APPLY_SYSCONFIG_PROFILE_KEY
    43 
    46 
    44 _ = gettext.translation("sysconfig", "/usr/share/locale",
    47 _ = gettext.translation("sysconfig", "/usr/share/locale",
    45                         fallback=True).ugettext
    48                         fallback=True).ugettext
    46 SCI_HELP = "/usr/share/sysconfig/help"
    49 SCI_HELP = "/usr/share/sysconfig/help"
    47 
    50 
   219     sc_kwargs = {'xslt_file': xslt}
   222     sc_kwargs = {'xslt_file': xslt}
   220     sc_args = [sc_profile]
   223     sc_args = [sc_profile]
   221     eng.register_checkpoint(GENERATE_SC_PROFILE_CHKPOINT,
   224     eng.register_checkpoint(GENERATE_SC_PROFILE_CHKPOINT,
   222                             "solaris_install/manifest/writer",
   225                             "solaris_install/manifest/writer",
   223                             "ManifestWriter", args=sc_args, kwargs=sc_kwargs)
   226                             "ManifestWriter", args=sc_args, kwargs=sc_kwargs)
   224     
   227 
       
   228     # Add profile location to the ApplySysconfig checkpoint's data dict.
       
   229     # Try to find the ApplySysconfig data dict from the DOC in case it
       
   230     # already exists.
       
   231     as_doc_dict = None
       
   232     as_doc_dict = eng.doc.volatile.get_first_child(name=APPLY_SYSCONFIG_DICT)
       
   233     if as_doc_dict is None:
       
   234         # Initialize new dictionary in DOC
       
   235         as_dict = {APPLY_SYSCONFIG_PROFILE_KEY : sc_profile}
       
   236         as_doc_dict = DataObjectDict(APPLY_SYSCONFIG_DICT, as_dict)
       
   237         eng.doc.volatile.insert_children(as_doc_dict)
       
   238     else:
       
   239         # Add to existing dictionary in DOC
       
   240         as_doc_dict.data_dict[APPLY_SYSCONFIG_PROFILE_KEY] = sc_profile
       
   241 
   225     eng.doc.persistent.insert_children([ConfigProfile()])
   242     eng.doc.persistent.insert_children([ConfigProfile()])
   226 
   243 
   227 
   244 
   228 def parse_create_profile_args(parser, args):
   245 def parse_create_profile_args(parser, args):
   229     '''Parses command line options for 'create-profile' sysconfig subcommand.
   246     '''Parses command line options for 'create-profile' sysconfig subcommand.