99class  SOAProvisioner :
1010
1111    jrfDone  =  0 ;
12+     secureDomain  =  'false' ;
13+     domainVersion  =  '' ;
1214    MACHINES  =  {
1315        'machine1'  : {
1416            'NMType' : 'SSL' ,
@@ -60,16 +62,14 @@ class SOAProvisioner:
6062        'serverGroupsToTarget'  : [ 'OSB-MGD-SVRS-COMBINED'  ]
6163    }
6264
63-     FLAG_1412  =  'false' 
64- 
6565    def  __init__ (self , oracleHome , javaHome , domainParentDir ):
6666        self .oracleHome  =  self .validateDirectory (oracleHome )
6767        self .javaHome  =  self .validateDirectory (javaHome )
6868        self .domainParentDir  =  self .validateDirectory (domainParentDir , create = True )
6969        return 
7070
71-     def  createSOADomain (self , domainName , user , password , db , dbPrefix , dbPassword , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , soaClusterName , osbClusterName , sslEnabled , domainType , exposeAdminT3Channel = None , t3ChannelPublicAddress = None , t3ChannelPort = None ):
72-         domainHome  =  self .createBaseDomain (domainName , user , password , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , sslEnabled , soaClusterName , osbClusterName , domainType )
71+     def  createSOADomain (self , domainName , user , password , db , dbPrefix , dbPassword , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , soaClusterName , osbClusterName , sslEnabled , domainType , adminAdministrationPort ,  soaAdministrationPort ,  osbAdministrationPort ,  exposeAdminT3Channel = None , t3ChannelPublicAddress = None , t3ChannelPort = None ):
72+         domainHome  =  self .createBaseDomain (domainName , user , password , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , sslEnabled , soaClusterName , osbClusterName , domainType ,  adminAdministrationPort ,  soaAdministrationPort ,  osbAdministrationPort )
7373
7474
7575        if  domainType  ==  "soa"  or  domainType  ==  "soaosb" :
@@ -89,15 +89,29 @@ def createSOADomain(self, domainName, user, password, db, dbPrefix, dbPassword,
8989        else :
9090            print  'persistentStore = ' + persistentStore + '...skipping JDBC reconfig' 
9191
92-         # Fix for bug 36654711 until changes comes with WSM template 
92+         readDomain (domainHome )
93+         # Update the default port values for default servers for 14.1.2.0.0  
94+         if  ( self .domainVersion  ==  "14.1.2.0.0"  and  self .secureDomain  ==  'false'  ):
95+             if  ("soa"  in  domainType  and  'soa_server1'  in  self .SOA_MANAGED_SERVERS  ):
96+                self .updateDefaultServerParameters (domainHome , sslEnabled , "soa_server1" )
97+             if  "osb"  in  domainType  and  'osb_server1'  in  self .OSB_MANAGED_SERVERS :
98+                self .updateDefaultServerParameters (domainHome , sslEnabled , "osb_server1" )
99+ 
100+         # Fix for bug 36654711 
93101        self .updateAppTarget (domainHome ,"wsm-pm" ,adminName )
102+         updateDomain ()
103+         
94104
105+     def  updateDefaultServerParameters (self , domainHome , sslEnabled , serverName ):
106+         print  'Removing administrationPort and SSL entries for default server '  +  serverName 
107+         cd ('/Servers/' +  serverName )
108+         set ('administrationPort' , 0 )
109+         if  (sslEnabled  ==  'false' ):
110+            delete (serverName , 'SSL' )
95111
96112    def  updateAppTarget (self , domainHome , appName , targetName ):
97113        print  'Adding target: ' +  targetName + ' for ' + appName 
98-         readDomain (domainHome )
99114        assign ("AppDeployment" , appName , "Target" , targetName )
100-         updateDomain ()
101115
102116
103117    def  configureTlogJDBCStore (self , domainHome , domainType ):
@@ -431,7 +445,7 @@ def getDSMBean(self, jdbcDS):
431445        return 
432446
433447
434-     def  createManagedServers (self , ms_count , managedNameBase , ms_port , cluster_name , ms_servers , managedServerSSLPort , sslEnabled ):
448+     def  createManagedServers (self , ms_count , managedNameBase , ms_port , cluster_name , ms_servers , managedServerSSLPort , sslEnabled ,  ms_admin_port ):
435449        # Create managed servers 
436450        for  index  in  range (0 , ms_count ):
437451            cd ('/' )
@@ -441,9 +455,9 @@ def createManagedServers(self, ms_count, managedNameBase, ms_port, cluster_name,
441455            create (name , 'Server' )
442456            cd ('/Servers/%s/'  %  name  )
443457            print ('Creating managed server: %s'  %  name );
458+             if  ( self .secureDomain  ==  'true' ):
459+               set ('administrationPort' , ms_admin_port )
444460            set ('ListenPort' , ms_port )
445-             if  (self .FLAG_1412  ==  'true' ):
446-               set ('ListenPortEnabled' , true )
447461            set ('NumOfRetriesBeforeMSIMode' , 0 )
448462            set ('RetryIntervalBeforeMSIMode' , 1 )
449463            set ('Cluster' , cluster_name )
@@ -458,19 +472,17 @@ def createManagedServers(self, ms_count, managedNameBase, ms_port, cluster_name,
458472        print  ms_servers 
459473        return  ms_servers 
460474
461-     def  createBaseDomain (self , domainName , user , password , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase ,soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , sslEnabled , soaClusterName , osbClusterName , domainType ):
475+     def  createBaseDomain (self , domainName , user , password , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase ,soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode , secureMode , managedCount , sslEnabled , soaClusterName , osbClusterName , domainType ,  adminAdministrationPort ,  soaAdministrationPort ,  osbAdministrationPort ):
462476        baseTemplate  =  self .replaceTokens (self .JRF_TEMPLATES ['baseTemplate' ])
463477
464478        readTemplate (baseTemplate )
465479        setOption ('DomainName' , domainName )
466480        setOption ('JavaHome' , self .javaHome )
467-         domainVersion  =  cmo .getDomainVersion ()
481+         self . domainVersion  =  cmo .getDomainVersion ()
468482        if  prodMode  ==  'true' :
469-             if  (domainVersion  ==  "14.1.2.0.0"  and  secureMode  ==  'true' ):
483+             if  (self . domainVersion  ==  "14.1.2.0.0"  and  secureMode  ==  'true' ):
470484               setOption ('ServerStartMode' , 'secure' )
471-             elif  (domainVersion  ==  "14.1.2.0.0"  and  secureMode  ==  'false' ):
472-                setOption ('ServerStartMode' , 'prod' )
473-                self .FLAG_1412  =  'true' 
485+                self .secureDomain  =  'true' 
474486            else :
475487               setOption ('ServerStartMode' , 'prod' )
476488        else :
@@ -486,8 +498,8 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminSer
486498        print  'Creating Admin Server...' 
487499        cd ('/Servers/AdminServer' )
488500        set ('ListenPort' , admin_port )
489-         if  ( self .FLAG_1412  ==  'true' ):
490-             set ('ListenPortEnabled ' , true )
501+         if  ( self .secureDomain  ==  'true' ):
502+             set ('administrationPort ' , int ( adminAdministrationPort ) )
491503        set ('Name' , adminName )
492504        self .ADMIN_SERVER_NAME  =  adminName 
493505        cmo .setWeblogicPluginEnabled (true )
@@ -511,15 +523,15 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminSer
511523            print  '\n Creating cluster...'  +  soaClusterName 
512524            cd ('/' )
513525            cl = create (soaClusterName , 'Cluster' )
514-             self .SOA_MANAGED_SERVERS  =  self .createManagedServers (ms_count , soaManagedNameBase , ms_port , soaClusterName , self .SOA_MANAGED_SERVERS , managedSSLPort , sslEnabled )
526+             self .SOA_MANAGED_SERVERS  =  self .createManagedServers (ms_count , soaManagedNameBase , ms_port , soaClusterName , self .SOA_MANAGED_SERVERS , managedSSLPort , sslEnabled ,  int ( soaAdministrationPort ) )
515527            print  'Created managed Servers for cluster..... '  +  soaClusterName 
516528        elif  domainType  ==  "osb" :
517529            ms_port  =  int (osbManagedServerPort )
518530            managedSSLPort  =  int (osbManagedServerSSLPort )
519531            print  '\n Creating cluster...'  +  osbClusterName 
520532            cd ('/' )
521533            cl = create (osbClusterName , 'Cluster' )
522-             self .OSB_MANAGED_SERVERS  =  self .createManagedServers (ms_count , osbManagedNameBase , ms_port , osbClusterName , self .OSB_MANAGED_SERVERS , managedSSLPort , sslEnabled )
534+             self .OSB_MANAGED_SERVERS  =  self .createManagedServers (ms_count , osbManagedNameBase , ms_port , osbClusterName , self .OSB_MANAGED_SERVERS , managedSSLPort , sslEnabled ,  int ( osbAdministrationPort ) )
523535            print  'Created managed Servers for cluster..... '  +  osbClusterName 
524536
525537        # Creating additional cluster and managed servers 
@@ -528,7 +540,7 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminSer
528540            cd ('/' )
529541            cl = create (osbClusterName , 'Cluster' )
530542            # Creating  managed servers for additional cluster 
531-             self .OSB_MANAGED_SERVERS  =  self .createManagedServers (ms_count , osbManagedNameBase , int (osbManagedServerPort ), osbClusterName , self .OSB_MANAGED_SERVERS , int (osbManagedServerSSLPort ), sslEnabled )
543+             self .OSB_MANAGED_SERVERS  =  self .createManagedServers (ms_count , osbManagedNameBase , int (osbManagedServerPort ), osbClusterName , self .OSB_MANAGED_SERVERS , int (osbManagedServerSSLPort ), sslEnabled ,  int ( osbAdministrationPort ) )
532544            print  'Created managed Servers for additional cluster..... '  +  osbClusterName 
533545
534546        # Create Node Manager 
@@ -830,7 +842,7 @@ def enable_admin_channel(self, admin_channel_address, admin_channel_port):
830842# Entry point to the script # 
831843############################# 
832844
833- def  usage ():
845+ def  usage (status = 0 ):
834846    print  sys .argv [0 ] +  ' -oh <oracle_home> -jh <java_home> -parent <domain_parent_dir> -name <domain-name> '  +  \
835847          '-user <domain-user> -password <domain-password> '  +  \
836848          '-rcuDb <rcu-database> -rcuPrefix <rcu-prefix> -rcuSchemaPwd <rcu-schema-password> '  \
@@ -840,18 +852,19 @@ def usage():
840852          '-soaManagedServerSSLPort <soaManagedServerSSLPort> -osbManagedServerSSLPort <osbManagedServerSSLPort> '  \
841853          '-prodMode <prodMode> -managedServerCount <managedCount> -secureMode <secureMode> '   \
842854          '-soaClusterName <soaClusterName> -osbClusterName <osbClusterName> '  \
855+           '-adminAdministrationPort <adminAdministrationPort> -soaAdministrationPort <soaAdministrationPort> -osbAdministrationPort <osbAdministrationPort> '  \
843856          '-domainType <soa|osb|soaosb|soab2b|soaosbb2b> '  \
844857          '-exposeAdminT3Channel <quoted true or false> -t3ChannelPublicAddress <address of the cluster> '  \
845858          '-t3ChannelPort <t3 channel port> -persistentStore <jdbc|file>' 
846-     sys .exit (0 )
859+     sys .exit (status )
847860
848861# Uncomment for Debug only 
849862#print str(sys.argv[0]) + " called with the following sys.argv array:" 
850863#for index, arg in enumerate(sys.argv): 
851864#    print "sys.argv[" + str(index) + "] = " + str(sys.argv[index]) 
852865
853866if  len (sys .argv ) <  17 :
854-     usage ()
867+     usage (1 )
855868
856869#oracleHome will be passed by command line parameter -oh. 
857870oracleHome  =  None 
@@ -873,6 +886,9 @@ def usage():
873886t3ChannelPort  =  None 
874887t3ChannelPublicAddress  =  None 
875888persistentStore  =  'jdbc' 
889+ adminAdministrationPort  =  '9002' 
890+ soaAdministrationPort  =  '9004' 
891+ osbAdministrationPort  =  '9007' 
876892
877893i  =  1 
878894while  i  <  len (sys .argv ):
@@ -963,10 +979,19 @@ def usage():
963979    elif  sys .argv [i ] ==  '-persistentStore' :
964980        persistentStore  =  sys .argv [i  +  1 ]
965981        i  +=  2 
982+     elif  sys .argv [i ] ==  '-adminAdministrationPort' :
983+         adminAdministrationPort  =  sys .argv [i  +  1 ]
984+         i  +=  2 
985+     elif  sys .argv [i ] ==  '-soaAdministrationPort' :
986+         soaAdministrationPort  =  sys .argv [i  +  1 ]
987+         i  +=  2 
988+     elif  sys .argv [i ] ==  '-osbAdministrationPort' :
989+         osbAdministrationPort  =  sys .argv [i  +  1 ]
990+         i  +=  2 
966991    else :
967992        print  'Unexpected argument switch at position '  +  str (i ) +  ': '  +  str (sys .argv [i ])
968-         usage ()
993+         usage (1 )
969994        sys .exit (1 )
970995
971996provisioner  =  SOAProvisioner (oracleHome , javaHome , domainParentDir )
972- provisioner .createSOADomain (domainName , domainUser , domainPassword , rcuDb , rcuSchemaPrefix , rcuSchemaPassword , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode ,secureMode , managedCount , soaClusterName , osbClusterName , sslEnabled , domainType , exposeAdminT3Channel , t3ChannelPublicAddress , t3ChannelPort )
997+ provisioner .createSOADomain (domainName , domainUser , domainPassword , rcuDb , rcuSchemaPrefix , rcuSchemaPassword , adminListenPort , adminServerSSLPort , adminName , soaManagedNameBase , osbManagedNameBase , soaManagedServerPort , osbManagedServerPort , soaManagedServerSSLPort , osbManagedServerSSLPort , prodMode ,secureMode , managedCount , soaClusterName , osbClusterName , sslEnabled , domainType , adminAdministrationPort ,  soaAdministrationPort ,  osbAdministrationPort ,  exposeAdminT3Channel , t3ChannelPublicAddress , t3ChannelPort )
0 commit comments