1010from java .lang import IllegalArgumentException
1111from java .util import Properties
1212
13- from oracle .weblogic .deploy .create import PostCreateDomainScriptRunner
13+ from oracle .weblogic .deploy .create import CreateDomainLifecycleHookScriptRunner
1414from oracle .weblogic .deploy .create import RCURunner
1515from oracle .weblogic .deploy .util import FileUtils
1616from wlsdeploy .aliases .location_context import LocationContext
8989from wlsdeploy .tool .create import ssl_helper
9090from wlsdeploy .tool .create import rcudbinfo_helper
9191from wlsdeploy .tool .create .creator import Creator
92+ from wlsdeploy .tool .create .domain_typedef import POST_CREATE_DOMAIN_LIFECYCLE_HOOK
93+ from wlsdeploy .tool .create .domain_typedef import POST_CREATE_RCU_SCHEMAS_LIFECYCLE_HOOK
9294from wlsdeploy .tool .create .security_provider_creator import SecurityProviderCreator
9395from wlsdeploy .tool .create .wlsroles_helper import WLSRoles
9496from wlsdeploy .tool .deploy import deployer_utils
111113
112114import wlsdeploy .util .unicode_helper as str_helper
113115
116+ POST_CREATE_RCU_SCHEMA_LOG_BASENAME = 'postCreateRcuSchemasScript'
117+ POST_CREATE_DOMAIN_LOG_BASENAME = 'postCreateDomainScript'
118+
114119class DomainCreator (Creator ):
115120 """
116121 The class that driver domain creation.
@@ -372,6 +377,7 @@ def __run_rcu(self):
372377
373378 disable_rcu_drop_schema = self .model_context .get_model_config ().get_disable_rcu_drop_schema () == 'true'
374379 runner .runRcu (rcu_sys_pass , rcu_schema_pass , disable_rcu_drop_schema )
380+ self .__run_post_create_rcu_schemas_script ()
375381 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
376382
377383 def _set_rcu_ssl_args_properties (self , ssl_conn_properties , rcu_db_info , keystore , keystore_type , truststore ,
@@ -400,6 +406,23 @@ def _set_rcu_ssl_args_properties(self, ssl_conn_properties, rcu_db_info, keystor
400406 DRIVER_PARAMS_TRUSTSTORE_PROPERTY )
401407 raise ex
402408
409+ def __run_post_create_rcu_schemas_script (self ):
410+ _method_name = '__run_post_create_rcu_schemas_script'
411+
412+ self .logger .entering (self .__class_name , _method_name )
413+ script = self ._domain_typedef .get_post_create_rcu_schemas_script ()
414+ if script is None :
415+ self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
416+ return
417+
418+ java_home = self .model_context .get_java_home ()
419+ oracle_home = self .model_context .get_oracle_home ()
420+ runner = CreateDomainLifecycleHookScriptRunner (POST_CREATE_RCU_SCHEMAS_LIFECYCLE_HOOK ,
421+ POST_CREATE_RCU_SCHEMA_LOG_BASENAME , script , java_home ,
422+ oracle_home , self ._domain_home , self ._domain_name )
423+ runner .runScript ()
424+ self .logger .info ('WLSDPLY-12577' , script , class_name = self .__class_name , method_name = _method_name )
425+ self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
403426
404427 def __fail_mt_1221_domain_creation (self ):
405428 """
@@ -488,7 +511,6 @@ def __deploy_resources_and_apps(self):
488511 self .logger .entering (class_name = self .__class_name , method_name = _method_name )
489512 model_deployer .deploy_resources_and_apps_for_create (self .model , self .model_context , self .aliases )
490513 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
491- return
492514
493515 def __create_base_domain (self , domain_home ):
494516 """
@@ -512,7 +534,6 @@ def __create_base_domain(self, domain_home):
512534 self .wlst_helper .close_template ()
513535 self .wlst_helper .read_domain (domain_home )
514536 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
515- return
516537
517538 def __extend_domain (self , domain_home ):
518539 """
@@ -572,7 +593,6 @@ def __extend_domain(self, domain_home):
572593 # known issue
573594 self .__apply_base_domain_config (topology_folder_list , delete = True )
574595 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
575- return
576596
577597 def __create_base_domain_with_select_template (self , domain_home ):
578598 """
@@ -596,7 +616,6 @@ def __create_base_domain_with_select_template(self, domain_home):
596616 self .wlst_helper .select_template (base_template )
597617
598618 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
599- return
600619
601620 def __extend_domain_with_select_template (self , domain_home ):
602621 """
@@ -676,7 +695,6 @@ def __extend_domain_with_select_template(self, domain_home):
676695 self .__create_security_folder ()
677696
678697 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
679- return
680698
681699 def __set_server_groups (self ):
682700 _method_name = '__set_server_groups'
@@ -741,7 +759,6 @@ def __apply_base_domain_config(self, topology_folder_list, delete=True):
741759 self ._reset_fmw_template_data_source_defaults_from_model ()
742760
743761 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
744- return
745762
746763 def _reset_fmw_template_data_source_defaults_from_model (self ):
747764 # Go through the model to find any FMW data sources to override the defaults
@@ -841,7 +858,6 @@ def __create_log_filters(self, location):
841858 if len (log_filter_nodes ) > 0 :
842859 self ._create_named_mbeans (LOG_FILTER , log_filter_nodes , location , log_created = True )
843860 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
844- return
845861
846862 def __create_reliable_delivery_policy (self , location ):
847863 """
@@ -857,7 +873,6 @@ def __create_reliable_delivery_policy(self, location):
857873 if len (policy_nodes ) > 0 :
858874 self ._create_named_mbeans (WS_RELIABLE_DELIVERY_POLICY , policy_nodes , location , log_created = True )
859875 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
860- return
861876
862877 def __create_xml_entity_cache (self , location ):
863878 """
@@ -873,7 +888,6 @@ def __create_xml_entity_cache(self, location):
873888 if len (cache_nodes ) > 0 :
874889 self ._create_named_mbeans (XML_ENTITY_CACHE , cache_nodes , location , log_created = True )
875890 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
876- return
877891
878892 def __create_xml_registry (self , location ):
879893 """
@@ -889,7 +903,6 @@ def __create_xml_registry(self, location):
889903 if len (registry_nodes ) > 0 :
890904 self ._create_named_mbeans (XML_REGISTRY , registry_nodes , location , log_created = True )
891905 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
892- return
893906
894907 def __create_ws_security (self , location ):
895908 """
@@ -903,7 +916,6 @@ def __create_ws_security(self, location):
903916 if len (ws_security ) > 0 :
904917 self ._create_named_mbeans (WEB_SERVICE_SECURITY , ws_security , location , log_created = True )
905918 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
906- return
907919
908920 def __create_machines (self , location , delete_now = True ):
909921 """
@@ -923,7 +935,6 @@ def __create_machines(self, location, delete_now=True):
923935 self ._create_named_mbeans (UNIX_MACHINE , unix_machine_nodes , location , log_created = True ,
924936 delete_now = delete_now )
925937 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
926- return
927938
928939 def __create_machines_clusters_and_servers (self , delete_now = True ):
929940 """
@@ -989,7 +1000,6 @@ def __create_machines_clusters_and_servers(self, delete_now=True):
9891000 self .__create_migratable_targets (location , delete_now = delete_now )
9901001
9911002 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
992- return
9931003
9941004 def __create_migratable_targets (self , location , delete_now = True ):
9951005 """
@@ -1008,7 +1018,6 @@ def __create_migratable_targets(self, location, delete_now=True):
10081018 delete_now = delete_now )
10091019
10101020 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1011- return
10121021
10131022 def __create_other_domain_artifacts (self , location , mbean_type_list ):
10141023 """
@@ -1031,7 +1040,6 @@ def __create_other_domain_artifacts(self, location, mbean_type_list):
10311040 self ._create_mbean (mbean_type , mbean_nodes , location , log_created = True )
10321041
10331042 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1034- return
10351043
10361044 def __set_connection_property_info (self , root_location , property_name , property_value , info_bucket , encrypted = False ):
10371045 p = self .__set_connection_property (root_location , property_name , property_value , encrypted )
@@ -1191,15 +1199,6 @@ def __configure_fmw_infra_database(self):
11911199 self .__set_rcu_datasource_parameters_without_shadow_table (rcu_db_info )
11921200
11931201 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1194- return
1195-
1196-
1197- def __rcudb_info_in_model (self ):
1198- model = self .model .get_model ()
1199- if (DOMAIN_INFO in model and RCU_DB_INFO in model [DOMAIN_INFO ]):
1200- return True
1201- else :
1202- return False
12031202
12041203 def __set_rcu_datasource_parameters_without_shadow_table (self , rcu_db_info ):
12051204 """
@@ -1275,9 +1274,8 @@ def __set_datasource_url(self, datasource_name, url_string):
12751274
12761275 def __get_store_path (self , tns_admin , store ):
12771276 result = store
1278- if not os .path .isabs (store ):
1279- if tns_admin :
1280- result = tns_admin + os .sep + store
1277+ if (not os .path .isabs (store )) and tns_admin :
1278+ result = tns_admin + os .sep + store
12811279 return result
12821280
12831281 def __set_ssl_standard_conn_properties (self , datasource_name , tns_admin , truststore , truststore_pwd ,
@@ -1365,7 +1363,6 @@ def __set_app_dir(self):
13651363 self .wlst_helper .set_option_if_needed (SET_OPTION_APP_DIR , app_dir )
13661364
13671365 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1368- return
13691366
13701367 def __enable_jms_db_persistence_if_set (self ):
13711368 """
@@ -1384,7 +1381,6 @@ def __enable_jms_db_persistence_if_set(self):
13841381 self .wlst_helper .enable_jms_store_db_persistence (enable_jms_db )
13851382
13861383 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1387- return
13881384
13891385 def __enable_jta_tlog_db_persistence_if_set (self ):
13901386 """
@@ -1404,7 +1400,6 @@ def __enable_jta_tlog_db_persistence_if_set(self):
14041400
14051401
14061402 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
1407- return
14081403
14091404 def __set_domain_name (self ):
14101405 _method_name = '__set_domain_name'
@@ -1426,7 +1421,6 @@ def __set_domain_name(self):
14261421 self .wlst_helper .set_if_needed (DOMAIN_NAME , self ._domain_name )
14271422 self .logger .info ('WLSDPLY-12227' , self .__default_domain_name , self ._domain_name ,
14281423 class_name = self .__class_name , method_name = _method_name )
1429- return
14301424
14311425 def __set_admin_password (self ):
14321426 """
@@ -1465,7 +1459,6 @@ def __set_admin_password(self):
14651459 model .get_model_domain_info_key ())
14661460 self .logger .throwing (ex , class_name = self .__class_name , method_name = _method_name )
14671461 raise ex
1468- return
14691462
14701463 def __set_admin_server_name (self ):
14711464 """
@@ -1602,7 +1595,9 @@ def __run_post_create_domain_script(self):
16021595
16031596 java_home = self .model_context .get_java_home ()
16041597 oracle_home = self .model_context .get_oracle_home ()
1605- runner = PostCreateDomainScriptRunner (script , java_home , oracle_home , self ._domain_home , self ._domain_name )
1598+ runner = CreateDomainLifecycleHookScriptRunner (POST_CREATE_DOMAIN_LIFECYCLE_HOOK ,
1599+ POST_CREATE_DOMAIN_LOG_BASENAME , script , java_home , oracle_home ,
1600+ self ._domain_home , self ._domain_name )
16061601 runner .runScript ()
16071602 self .logger .info ('WLSDPLY-12576' , script , class_name = self .__class_name , method_name = _method_name )
16081603 self .logger .exiting (class_name = self .__class_name , method_name = _method_name )
0 commit comments