6
6
7
7
import com .oracle .cie .domain .script .jython .WLSTException as WLSTException
8
8
9
-
10
9
class Infra12213Provisioner :
11
10
12
11
MACHINES = {
@@ -29,17 +28,22 @@ class Infra12213Provisioner:
29
28
'serverGroupsToTarget' : [ 'JRF-MAN-SVR' , 'WSMPM-MAN-SVR' ]
30
29
}
31
30
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 ):
33
32
self .oracleHome = self .validateDirectory (oracleHome )
34
33
self .javaHome = self .validateDirectory (javaHome )
35
34
self .domainParentDir = self .validateDirectory (domainParentDir , create = True )
36
35
return
37
36
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 )
41
45
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 ):
43
47
baseTemplate = self .replaceTokens (self .JRF_12213_TEMPLATES ['baseTemplate' ])
44
48
45
49
readTemplate (baseTemplate )
@@ -63,20 +67,6 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminNam
63
67
set ('ListenPort' , admin_port )
64
68
set ('Name' , adminName )
65
69
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
-
80
70
# Define the user password for weblogic
81
71
# =====================================
82
72
cd ('/Security/' + domainName + '/User/weblogic' )
@@ -127,12 +117,17 @@ def createBaseDomain(self, domainName, user, password, adminListenPort, adminNam
127
117
return domainHome
128
118
129
119
130
- def extendDomain (self , domainHome , db , dbPrefix , dbPassword ):
120
+ def extendDomain (self , domainHome , db , dbPrefix , dbPassword , exposeAdminT3Channel , t3ChannelPublicAddress ,
121
+ t3ChannelPort ):
131
122
print 'Extending domain at ' + domainHome
132
123
print 'Database ' + db
133
124
readDomain (domainHome )
134
125
setOption ('AppDir' , self .domainParentDir + '/applications' )
135
126
127
+ print 'ExposeAdminT3Channel %s with %s:%s ' % (exposeAdminT3Channel , t3ChannelPublicAddress , t3ChannelPort )
128
+ if 'true' == exposeAdminT3Channel :
129
+ self .enable_admin_channel (t3ChannelPublicAddress , t3ChannelPort )
130
+
136
131
print 'Applying JRF templates...'
137
132
for extensionTemplate in self .JRF_12213_TEMPLATES ['extensionTemplates' ]:
138
133
addTemplate (self .replaceTokens (extensionTemplate ))
@@ -212,6 +207,18 @@ def replaceTokens(self, path):
212
207
result = path .replace ('@@ORACLE_HOME@@' , oracleHome )
213
208
return result
214
209
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' )
215
222
216
223
#############################
217
224
# Entry point to the script #
@@ -223,24 +230,17 @@ def usage():
223
230
'-rcuDb <rcu-database> -rcuPrefix <rcu-prefix> -rcuSchemaPwd <rcu-schema-password> ' \
224
231
'-adminListenPort <adminListenPort> -adminName <adminName> ' \
225
232
'-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> '
227
236
sys .exit (0 )
228
237
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
-
238
238
# Uncomment for Debug only
239
239
#print str(sys.argv[0]) + " called with the following sys.argv array:"
240
240
#for index, arg in enumerate(sys.argv):
241
241
# print "sys.argv[" + str(index) + "] = " + str(sys.argv[index])
242
242
243
- if len (sys .argv ) < 16 :
243
+ if len (sys .argv ) < 19 :
244
244
usage ()
245
245
246
246
#oracleHome will be passed by command line parameter -oh.
@@ -259,7 +259,9 @@ def getEnvVar(var):
259
259
rcuSchemaPrefix = 'DEV12'
260
260
#change rcuSchemaPassword to your infra schema password. Command line parameter -rcuSchemaPwd.
261
261
rcuSchemaPassword = None
262
-
262
+ exposeAdminT3Channel = None
263
+ t3ChannelPort = None
264
+ t3ChannelPublicAddress = None
263
265
i = 1
264
266
while i < len (sys .argv ):
265
267
if sys .argv [i ] == '-oh' :
@@ -310,10 +312,21 @@ def getEnvVar(var):
310
312
elif sys .argv [i ] == '-clusterName' :
311
313
clusterName = sys .argv [i + 1 ]
312
314
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
313
324
else :
314
325
print 'Unexpected argument switch at position ' + str (i ) + ': ' + str (sys .argv [i ])
315
326
usage ()
316
327
sys .exit (1 )
317
328
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