66
77import com .oracle .cie .domain .script .jython .WLSTException as WLSTException
88
9-
109class Infra12213Provisioner :
1110
1211 MACHINES = {
@@ -29,17 +28,22 @@ class Infra12213Provisioner:
2928 'serverGroupsToTarget' : [ 'JRF-MAN-SVR' , 'WSMPM-MAN-SVR' ]
3029 }
3130
32- def __init__ (self , oracleHome , javaHome , domainParentDir , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port ):
31+ def __init__ (self , oracleHome , javaHome , domainParentDir , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName ):
3332 self .oracleHome = self .validateDirectory (oracleHome )
3433 self .javaHome = self .validateDirectory (javaHome )
3534 self .domainParentDir = self .validateDirectory (domainParentDir , create = True )
3635 return
3736
38- def createInfraDomain (self , domainName , user , password , db , dbPrefix , dbPassword , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port ):
39- domainHome = self .createBaseDomain (domainName , user , password , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port )
40- self .extendDomain (domainHome , db , dbPrefix , dbPassword )
37+ def createInfraDomain (self , domainName , user , password , db , dbPrefix , dbPassword , adminListenPort , adminName ,
38+ managedNameBase , managedServerPort , prodMode , managedCount , clusterName ,
39+ exposeAdminT3Channel = None , t3ChannelPublicAddress = None , t3ChannelPort = None ):
40+ domainHome = self .createBaseDomain (domainName , user , password , adminListenPort , adminName , managedNameBase ,
41+ managedServerPort , prodMode , managedCount , clusterName
42+ )
43+ self .extendDomain (domainHome , db , dbPrefix , dbPassword , exposeAdminT3Channel , t3ChannelPublicAddress ,
44+ t3ChannelPort )
4145
42- def createBaseDomain (self , domainName , user , password , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port ):
46+ def createBaseDomain (self , domainName , user , password , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName ):
4347 baseTemplate = self .replaceTokens (self .JRF_12213_TEMPLATES ['baseTemplate' ])
4448
4549 readTemplate (baseTemplate )
@@ -63,20 +67,6 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminNam
6367 set ('ListenPort' , admin_port )
6468 set ('Name' , adminName )
6569
66- create ('T3Channel' , 'NetworkAccessPoint' )
67- cd ('/Servers/%s/NetworkAccessPoints/T3Channel' % adminName )
68- set ('PublicPort' , t3_channel_port )
69- set ('PublicAddress' , 'junkvalue' )
70- # Dont set listenaddress, introspector overrides automatically with sit-config
71- #set('ListenAddress', '%s-%s' % (domain_uid, admin_server_name_svc))
72- set ('ListenPort' , t3_channel_port )
73-
74- cd ('/Servers/%s' % adminName )
75- create (adminName ,'Log' )
76- cd ('/Servers/%s/Log/%s' % (adminName , adminName ))
77- # Give incorrect filelog, introspector overrides with sit-config
78- set ('FileName' , 'dirdoesnotexist' )
79-
8070 # Define the user password for weblogic
8171 # =====================================
8272 cd ('/Security/' + domainName + '/User/weblogic' )
@@ -127,12 +117,17 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminNam
127117 return domainHome
128118
129119
130- def extendDomain (self , domainHome , db , dbPrefix , dbPassword ):
120+ def extendDomain (self , domainHome , db , dbPrefix , dbPassword , exposeAdminT3Channel , t3ChannelPublicAddress ,
121+ t3ChannelPort ):
131122 print 'Extending domain at ' + domainHome
132123 print 'Database ' + db
133124 readDomain (domainHome )
134125 setOption ('AppDir' , self .domainParentDir + '/applications' )
135126
127+ print 'ExposeAdminT3Channel %s with %s:%s ' % (exposeAdminT3Channel , t3ChannelPublicAddress , t3ChannelPort )
128+ if 'true' == exposeAdminT3Channel :
129+ self .enable_admin_channel (t3ChannelPublicAddress , t3ChannelPort )
130+
136131 print 'Applying JRF templates...'
137132 for extensionTemplate in self .JRF_12213_TEMPLATES ['extensionTemplates' ]:
138133 addTemplate (self .replaceTokens (extensionTemplate ))
@@ -212,6 +207,18 @@ def replaceTokens(self, path):
212207 result = path .replace ('@@ORACLE_HOME@@' , oracleHome )
213208 return result
214209
210+ def enable_admin_channel (self , admin_channel_address , admin_channel_port ):
211+ if admin_channel_address == None or admin_channel_port == 'None' :
212+ return
213+ cd ('/' )
214+ admin_server_name = get ('AdminServerName' )
215+ print ('setting admin server t3channel for ' + admin_server_name )
216+ cd ('/Servers/' + admin_server_name )
217+ create ('T3Channel' , 'NetworkAccessPoint' )
218+ cd ('/Servers/' + admin_server_name + '/NetworkAccessPoint/T3Channel' )
219+ set ('ListenPort' , int (admin_channel_port ))
220+ set ('PublicPort' , int (admin_channel_port ))
221+ set ('PublicAddress' , 'junkvalue' )
215222
216223#############################
217224# Entry point to the script #
@@ -223,24 +230,17 @@ def usage():
223230 '-rcuDb <rcu-database> -rcuPrefix <rcu-prefix> -rcuSchemaPwd <rcu-schema-password> ' \
224231 '-adminListenPort <adminListenPort> -adminName <adminName> ' \
225232 '-managedNameBase <managedNameBase> -managedServerPort <managedServerPort> -prodMode <prodMode> ' \
226- '-managedServerCount <managedCount> -clusterName <clusterName>'
233+ '-managedServerCount <managedCount> -clusterName <clusterName> ' \
234+ '-exposeAdminT3Channel <quoted true or false> -t3ChannelPublicAddress <address of the cluster> ' \
235+ '-t3ChannelPort <t3 channel port> '
227236 sys .exit (0 )
228237
229- def getEnvVar (var ):
230- val = os .environ .get (var )
231- if val == None :
232- print "ERROR: Env var " ,var , " not set."
233- sys .exit (1 )
234- return val
235-
236- t3_channel_port = int (getEnvVar ("T3_CHANNEL_PORT" ))
237-
238238# Uncomment for Debug only
239239#print str(sys.argv[0]) + " called with the following sys.argv array:"
240240#for index, arg in enumerate(sys.argv):
241241# print "sys.argv[" + str(index) + "] = " + str(sys.argv[index])
242242
243- if len (sys .argv ) < 16 :
243+ if len (sys .argv ) < 19 :
244244 usage ()
245245
246246#oracleHome will be passed by command line parameter -oh.
@@ -259,7 +259,9 @@ def getEnvVar(var):
259259rcuSchemaPrefix = 'DEV12'
260260#change rcuSchemaPassword to your infra schema password. Command line parameter -rcuSchemaPwd.
261261rcuSchemaPassword = None
262-
262+ exposeAdminT3Channel = None
263+ t3ChannelPort = None
264+ t3ChannelPublicAddress = None
263265i = 1
264266while i < len (sys .argv ):
265267 if sys .argv [i ] == '-oh' :
@@ -310,10 +312,21 @@ def getEnvVar(var):
310312 elif sys .argv [i ] == '-clusterName' :
311313 clusterName = sys .argv [i + 1 ]
312314 i += 2
315+ elif sys .argv [i ] == '-t3ChannelPublicAddress' :
316+ t3ChannelPublicAddress = sys .argv [i + 1 ]
317+ i += 2
318+ elif sys .argv [i ] == '-t3ChannelPort' :
319+ t3ChannelPort = sys .argv [i + 1 ]
320+ i += 2
321+ elif sys .argv [i ] == '-exposeAdminT3Channel' :
322+ exposeAdminT3Channel = sys .argv [i + 1 ]
323+ i += 2
313324 else :
314325 print 'Unexpected argument switch at position ' + str (i ) + ': ' + str (sys .argv [i ])
315326 usage ()
316327 sys .exit (1 )
317328
318- provisioner = Infra12213Provisioner (oracleHome , javaHome , domainParentDir , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port )
319- provisioner .createInfraDomain (domainName , domainUser , domainPassword , rcuDb , rcuSchemaPrefix , rcuSchemaPassword , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName , t3_channel_port )
329+ provisioner = Infra12213Provisioner (oracleHome , javaHome , domainParentDir , adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount , clusterName )
330+ provisioner .createInfraDomain (domainName , domainUser , domainPassword , rcuDb , rcuSchemaPrefix , rcuSchemaPassword ,
331+ adminListenPort , adminName , managedNameBase , managedServerPort , prodMode , managedCount ,
332+ clusterName , exposeAdminT3Channel , t3ChannelPublicAddress , t3ChannelPort )
0 commit comments