ó i'dWc@sNddljZddlZdejfd„ƒYZdefd„ƒYZdS(iÿÿÿÿNt InitializeSMFcBs/eZdZd„Zed„Zed„ZRS(sYICT checkpoint sets up an smf repository and corrects the smf system profile. cCs#tt|ƒj|ƒd|_dS(sµInitializes the class Parameters: -name - this arg is required by the AbstractCheckpoint and is not used by the checkpoint. N(tsuperRt__init__tNonetsys_profile_dict(tselftname((sinitialize_smf.pyR#scCs|jjdƒ|sxh|jjƒD]T\}}tjj|ƒrTtj|ƒn|jjd||ƒtj||ƒq&Wn|jjdƒ|stjjtjj |j t j ƒƒry&tjtjj |j t j ƒƒWqt k r}tdt j |fƒ‚qXqndS(s' Parameters: - the dry_run keyword paramater. The default value is False. If set to True, the log message describes the checkpoint tasks. Returns: - Nothing On failure, errors raised are managed by the engine. s5ICT current task: Creating symlinks to system profiles$Creating a symlink between %s and %ss1ICT current task: Removing /etc/svc/repository.dbsCould not remove %s: %sN(tloggertdebugRtitemstostpathtexiststunlinktsymlinktjoint target_dirtICTtREPO_DBt BaseExceptiont RuntimeError(Rtdry_runtkeytvalueterr((sinitialize_smf.pyt_execute.s   '&cCs„|jƒitjj|jtjƒtj6tjj|jtjƒtj 6tjj|jtj ƒtj 6|_ |j d|ƒdS(sî The AbstractCheckpoint class requires this method in sub-classes. Initializing SMF involves: - Creating symlinks to the correct system profile files Parameters: - the dry_run keyword paramater. The default value is False. If set to True, the log message describes the checkpoint tasks. Returns: - Nothing On failure, errors raised are managed by the engine. RN(t parse_docR R RRRt GENERIC_XMLtGEN_LTD_NET_XMLt NAME_SVC_XMLt NS_DNS_XMLtINETD_SVCS_XMLt INETD_XMLRR(RR((sinitialize_smf.pytexecuteLs  %(t__name__t __module__t__doc__RtFalseRR!(((sinitialize_smf.pyRs tInitializeSMFZonecBs#eZdZd„Zed„ZRS(sYICT checkpoint sets up an smf repository and corrects the smf system profile. cCstt|ƒj|ƒdS(sµInitializes the class Parameters: -name - this arg is required by the AbstractCheckpoint and is not used by the checkpoint. N(RR&R(RR((sinitialize_smf.pyRnscCs„|jƒitjj|jtjƒtj6tjj|jtjƒtj 6tjj|jtj ƒtj 6|_ |j d|ƒdS(sù The AbstractCheckpoint class requires this method in sub-classes. Initializing SMF for a zone involves: - Creating symlinks to the correct system profile files Parameters: - the dry_run keyword paramater. The default value is False. If set to True, the log message describes the checkpoint tasks. Returns: - Nothing On failure, errors raised are managed by the engine. RN(RR R RRRRRRt NS_FILES_XMLRR RR(RR((sinitialize_smf.pyR!vs  %(R"R#R$RR%R!(((sinitialize_smf.pyR&js (tsolaris_install.icttictRR t ICTBaseClassRR&(((sinitialize_smf.pyts K