76. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 9/15/2018 10:47:18 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

76.1 Files compared

# Location File Last Modified
1 MHV_2018.4.0.0.zip\2018.4.0.0\national portal\mhv_source\mhv_devops\src\main\wlst\_deployment_configuration create_deployment_environment.py Thu Aug 23 21:39:14 2018 UTC
2 MHV_2018.4.0.0.zip\2018.4.0.0\national portal\mhv_source\mhv_devops\src\main\wlst\_deployment_configuration create_deployment_environment.py Sat Sep 15 20:35:15 2018 UTC

76.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 942
Changed 2 4
Inserted 0 0
Removed 0 0

76.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

76.4 Active regular expressions

No regular expressions were active.

76.5 Comparison detail

  1   import soc ket;
  2   import str ing;
  3  
  4   # converts  string pr operties t o lists wh ere expect ed.
  5   machine_li sten_addre sses=strin g.split(ma chine_list en_address es, ',');
  6   managed_se rver_liste n_port_sta rt=int(adm in_server_ listen_por t) + 1;
  7   nms_machin es = int(n umber_of_m anaged_ser vers_per_m achine);
  8  
  9   data_sourc e_names=st ring.split (data_sour ce_names,  ',');
  10   data_sourc e_jndi_nam es=string. split(data _source_jn di_names,  ',');
  11   data_sourc e_users=st ring.split (data_sour ce_users,  ',');
  12   data_sourc e_password s=string.s plit(data_ source_pas swords, ', ');
  13   data_sourc e_url=stri ng.split(d ata_source _url, ',') ;
  14   data_sourc e_driver=s tring.spli t(data_sou rce_driver , ',');
  15   data_sourc e_test=str ing.split( data_sourc e_test, ', ');
  16   data_sourc e_init_sql =string.sp lit(data_s ource_init _sql, ',') ;
  17  
  18   jmsResourc es = {}
  19  
  20   # phrmgr q ueue infor mation
  21   jmsResourc es['phrmgr '] = {}
  22   try: 
  23       jmsRes ources['ph rmgr']['jm s_system_r esource_na me']=phrmg r_jms_syst em_resourc e_name
  24       jmsRes ources['ph rmgr']['su b_deployme nt_name']= phrmgr_sub _deploymen t_name
  25       jmsRes ources['ph rmgr']['co nnection_f actory_nam es']=strin g.split(ph rmgr_conne ction_fact ory_names,  ',');
  26       jmsRes ources['ph rmgr']['co nnection_f actory_jnd i_names']= string.spl it(phrmgr_ connection _factory_j ndi_names,  ',');
  27       jmsRes ources['ph rmgr']['di stributed_ queue_name s']=string .split(phr mgr_distri buted_queu e_names, ' ,');
  28       jmsRes ources['ph rmgr']['di stributed_ queue_jndi _names']=s tring.spli t(phrmgr_d istributed _queue_jnd i_names, ' ,');
  29       jmsRes ources['ph rmgr']['di stributed_ error_queu e_names']= string.spl it(phrmgr_ distribute d_error_qu eue_names,  ',');
  30       jmsRes ources['ph rmgr']['di stributed_ error_queu e_jndi_nam es']=strin g.split(ph rmgr_distr ibuted_err or_queue_j ndi_names,  ',');
  31   except:
  32       pass
  33       
  34   # usermgmt  queue inf ormation
  35   jmsResourc es['usermg mt'] = {}
  36   try:
  37       jmsRes ources['us ermgmt'][' jms_system _resource_ name']=use rmgmt_jms_ system_res ource_name
  38       jmsRes ources['us ermgmt'][' sub_deploy ment_name' ]=usermgmt _sub_deplo yment_name
  39       jmsRes ources['us ermgmt'][' connection _factory_n ames']=str ing.split( usermgmt_c onnection_ factory_na mes, ',');
  40       jmsRes ources['us ermgmt'][' connection _factory_j ndi_names' ]=string.s plit(userm gmt_connec tion_facto ry_jndi_na mes, ',');
  41       jmsRes ources['us ermgmt'][' distribute d_queue_na mes']=stri ng.split(u sermgmt_di stributed_ queue_name s, ',');
  42       jmsRes ources['us ermgmt'][' distribute d_queue_jn di_names'] =string.sp lit(usermg mt_distrib uted_queue _jndi_name s, ',');
  43       jmsRes ources['us ermgmt'][' distribute d_error_qu eue_names' ]=string.s plit(userm gmt_distri buted_erro r_queue_na mes, ',');
  44       jmsRes ources['us ermgmt'][' distribute d_error_qu eue_jndi_n ames']=str ing.split( usermgmt_d istributed _error_que ue_jndi_na mes, ',');
  45   except:
  46       pass
  47       
  48   # bbmi que ue informa tion
  49   try:
  50       jmsRes ources['bb mi'] = {}
  51       jmsRes ources['bb mi']['jms_ system_res ource_name ']=bbmi_jm s_system_r esource_na me
  52       jmsRes ources['bb mi']['sub_ deployment _name']=bb mi_sub_dep loyment_na me
  53       jmsRes ources['bb mi']['conn ection_fac tory_names ']=string. split(bbmi _connectio n_factory_ names, ',' );
  54       jmsRes ources['bb mi']['conn ection_fac tory_jndi_ names']=st ring.split (bbmi_conn ection_fac tory_jndi_ names, ',' );
  55       jmsRes ources['bb mi']['dist ributed_qu eue_names' ]=string.s plit(bbmi_ distribute d_queue_na mes, ',');
  56       jmsRes ources['bb mi']['dist ributed_qu eue_jndi_n ames']=str ing.split( bbmi_distr ibuted_que ue_jndi_na mes, ',');
  57       jmsRes ources['bb mi']['dist ributed_er ror_queue_ names']=st ring.split (bbmi_dist ributed_er ror_queue_ names, ',' );
  58       jmsRes ources['bb mi']['dist ributed_er ror_queue_ jndi_names ']=string. split(bbmi _distribut ed_error_q ueue_jndi_ names, ',' );
  59   except:
  60       pass
  61       
  62   # batch qu eue inform ation
  63   jmsResourc es['batch' ] = {}
  64   try:
  65       jmsRes ources['ba tch']['jms _system_re source_nam e']=batch_ jms_system _resource_ name
  66       jmsRes ources['ba tch']['sub _deploymen t_name']=b atch_sub_d eployment_ name
  67       jmsRes ources['ba tch']['con nection_fa ctory_name s']=string .split(bat ch_connect ion_factor y_names, ' ,');
  68       jmsRes ources['ba tch']['con nection_fa ctory_jndi _names']=s tring.spli t(batch_co nnection_f actory_jnd i_names, ' ,');
  69       jmsRes ources['ba tch']['dis tributed_q ueue_names ']=string. split(batc h_distribu ted_queue_ names, ',' );
  70       jmsRes ources['ba tch']['dis tributed_q ueue_jndi_ names']=st ring.split (batch_dis tributed_q ueue_jndi_ names, ',' );
  71       jmsRes ources['ba tch']['dis tributed_e rror_queue _names']=s tring.spli t(batch_di stributed_ error_queu e_names, ' ,');
  72       jmsRes ources['ba tch']['dis tributed_e rror_queue _jndi_name s']=string .split(bat ch_distrib uted_error _queue_jnd i_names, ' ,');
  73   except:
  74       pass     
  75  
  76   print 'CRE ATE PATHS' ;
  77   domain_nam e=os.geten v('DOMAIN_ NAME');
  78   java_home= os.getenv( 'JAVA_HOME ');
  79   middleware _home=os.g etenv('MID DLEWARE_HO ME');
  80   weblogic_h ome=os.get env('WEBLO GIC_HOME') ;
  81   fusion_mid dleware_ho me=os.gete nv('FUSION _MIDDLEWAR E_HOME');
  82   configurat ion_home =  os.getenv ('CONFIGUR ATION_HOME ');
  83  
  84   print 'INF O';
  85   print 'Num  Managed S ervers per  Machine:  ' + number _of_manage d_servers_ per_machin e;
  86    
  87   domain_hom e=configur ation_home  + '/domai ns/' + dom ain_name;
  88   domain_app lication_h ome=config uration_ho me + '/app lications/ ' + domain _name;
  89   node_manag er_home=do main_home  + '/nodema nager';
  90    
  91   def connec t_to_admin _server():
  92       print  'CONNECT T O ADMIN SE RVER';
  93       admin_ server_lis ten_addres s = socket .gethostna me();
  94       print  'Admin Ser ver URL :  t3://' + a dmin_serve r_listen_a ddress + ' :' + admin _server_li sten_port;
  95       admin_ server_url  = 't3://'  + admin_s erver_list en_address  + ':' + a dmin_serve r_listen_p ort;
  96       print  'Connectin g to Admin  Server';
  97       connec t(admin_us ername, ad min_passwo rd, admin_ server_url );
  98       print  'CONNECTED !! to Admi n Server';
  99       
  100   def setJta Transactio nTimeout() :
  101           pr int 'SETTI NG JTA TRA NSACTIION  TIMEOUT VA LUE TO: '  + jta_tran saction_ti meout
  102           cd ('/JTA/' +  domain_na me);
  103           se t('Timeout Seconds',  jta_transa ction_time out);
  104    
  105   def create _cluster() :
  106       print  'CREATE CL USTER';
  107       cluste r = cmo.cr eateCluste r(cluster_ name);
  108       cluste r.setClust erMessagin gMode('uni cast');
  109       return  cluster;
  110    
  111   def create _dynamic_c luster():
  112       print  'CREATE DY NAMIC CLUS TER';
  113        
  114       cluste r = cmo.cr eateCluste r(cluster_ name);
  115       cluste r.setClust erMessagin gMode('uni cast');
  116        
  117       cmo.cr eateServer Template(' server_tem plate');
  118       server _template  = cmo.look upServerTe mplate('se rver_templ ate');
  119       server _template. setListenP ort(manage d_server_l isten_port _start);
  120       server _template. setCluster (cluster);
  121       overlo ad_protect ion = serv er_templat e.getOverl oadProtect ion();
  122       overlo ad_protect ion.setFai lureAction ('force-sh utdown');
  123       overlo ad_protect ion.setPan icAction(' system-exi t');
  124       overlo ad_protect ion.create ServerFail ureTrigger ();
  125       overlo ad_protect ion.getSer verFailure Trigger(). setMaxStuc kThreadTim e(600);
  126       overlo ad_protect ion.getSer verFailure Trigger(). setStuckTh readCount( 0);
  127       server _log = ser ver_templa te.getLog( );
  128       #serve r_log.setF ileName(do main_home  + '/server s/' + mana ged_server _server_na me + '/log s/' + mana ged_server _server_na me + '_%yy yy%_%MM%_% dd%_%hh%_% mm%.log');
  129       server _log.setRo tationType ('byTime') ;
  130       server _log.setFi leTimeSpan (24);
  131       server _log.setRo tationTime ('00:00');
  132       server _log.setNu mberOfFile sLimited(j ava.lang.B oolean('tr ue'));
  133       server _log.setFi leCount(10 );
  134       #serve r_log.setR edirectStd errToServe rLogEnable d(java.lan g.Boolean( 'true'));
  135       #serve r_log.setR edirectStd outToServe rLogEnable d(java.lan g.Boolean( 'true'));
  136       server _log.setLo gFileSever ity('Warni ng');
  137       server _log.setSt doutSeveri ty('Warnin g');
  138       server _log.setDo mainLogBro adcastSeve rity('Warn ing');
  139       server _log.setMe moryBuffer Severity(' Warning');
  140       web_se rver_log =  server_te mplate.get WebServer( ).getWebSe rverLog();
  141       web_se rver_log.s etLoggingE nabled(jav a.lang.Boo lean('fals e'));
  142       web_se rver_log.s etRotation Type('byTi me');
  143       web_se rver_log.s etFileTime Span(24);
  144       web_se rver_log.s etRotation Time('00:0 0');
  145       web_se rver_log.s etNumberOf FilesLimit ed(java.la ng.Boolean ('true'));
  146       web_se rver_log.s etFileCoun t(10);
  147       cluste r.getDynam icServers( ).setServe rTemplate( server_tem plate);
  148       cluste r.getDynam icServers( ).setMaxim umDynamicS erverCount (2);
  149       cluste r.getDynam icServers( ).setMachi neNameMatc hExpressio n('machine *');
  150       cluste r.getDynam icServers( ).setServe rNamePrefi x('server_ ');
  151       cluste r.getDynam icServers( ).setCalcu latedListe nPorts(jav a.lang.Boo lean('true '));
  152       cluste r.getDynam icServers( ).setCalcu latedMachi neNames(ja va.lang.Bo olean('tru e'));
  153       cluste r.getDynam icServers( ).setCalcu latedListe nPorts(jav a.lang.Boo lean('true '));
  154        
  155       return  cluster;
  156    
  157   def create _machines( ):
  158       print  'CREATE MA CHINES';
  159       for i  in range(l en(machine _listen_ad dresses)):
  160           ma chine = cm o.createUn ixMachine( 'machine_'  + machine _listen_ad dresses[i] );
  161           ma chine.setP ostBindUID Enabled(ja va.lang.Bo olean('tru e'));
  162           ma chine.setP ostBindUID (machine_u ser_id);
  163           ma chine.setP ostBindGID Enabled(ja va.lang.Bo olean('tru e'));
  164           ma chine.setP ostBindGID (machine_g roup_id);
  165           ma chine.getN odeManager ().setList enAddress( machine_li sten_addre sses[i]);
  166           ma chine.getN odeManager ().setNMTy pe(node_ma nager_mode );
  167    
  168   def create _machines_ and_server s(cluster) :
  169       print  'CREATE MA CHINES AND  SERVERS';
  170       for i  in range(l en(machine _listen_ad dresses)):
  171           pr int 'i = '  + repr(i)
  172           ma chine = cm o.createUn ixMachine( machine_li sten_addre sses[i]);
  173           ma chine.setP ostBindUID Enabled(ja va.lang.Bo olean('tru e'));
  174           ma chine.setP ostBindUID (machine_u ser_id);
  175           ma chine.setP ostBindGID Enabled(ja va.lang.Bo olean('tru e'));
  176           ma chine.setP ostBindGID (machine_g roup_id);
  177           ma chine.getN odeManager ().setList enAddress( machine_li sten_addre sses[i]);
  178           ma chine.getN odeManager ().setNMTy pe(node_ma nager_mode );
  179           ma chine.getN odeManager ().setList enPort(int (node_mana ger_listen _port));
  180           fo r j in ran ge(nms_mac hines):
  181                cd('/Ser vers/');
  182                print 'j  = ' + rep r(j);
  183                managed_ server_lis ten_port =  managed_s erver_list en_port_st art + j;
  184                managed_ server_deb ug_port =  managed_se rver_liste n_port + 2 000;
  185                
  186                #managed _server_se rver_name  = 'server_ ' + machin e_listen_a ddresses[i ] + '_' +  repr(manag ed_server_ listen_por t);
  187                
  188                managed_ server_ser ver_name =  domain_na me + '.ms'  + repr(i)  + chr(97  + j);
  189                server =  cmo.creat eServer(ma naged_serv er_server_ name);
  190                server.s etListenPo rt(managed _server_li sten_port) ;
  191                server.s etListenAd dress(mach ine_listen _addresses [i]);
  192                server.s etCluster( cluster);
  193                server.s etMachine( machine);
  194                
  195                cd('/Ser vers/' + m anaged_ser ver_server _name + '/ ServerStar t/' + mana ged_server _server_na me)
  196                set('Arg uments', m anaged_ser ver_argume nts.replac e("DEBUG_P ORT", repr (managed_s erver_debu g_port), 1 ));
  197                
  198                # SSL &  Keystore C onfigurati on
  199                cd('/Ser vers/' + m anaged_ser ver_server _name);
  200                
  201                set('Key Stores', ' CustomIden tityAndCus tomTrust') ;
  202                
  203                set('Cus tomIdentit yKeyStoreF ileName',  '/u01/app/ keystore/M HV.jks');
  204                set('Cus tomIdentit yKeyStoreT ype', 'JKS ');
  205                set('Cus tomIdentit yKeyStoreP assPhrase' , keystore _password) ;
  206                
  207                set('Cus tomTrustKe yStoreFile Name', '/u 01/app/key store/MHV. jks');
  208                set('Cus tomTrustKe yStoreType ', 'JKS');
  209                set('Cus tomTrustKe yStorePass Phrase', k eystore_pa ssword);
  210                
  211                cd('/Ser vers/' + m anaged_ser ver_server _name + '/ SSL/' + ma naged_serv er_server_ name);
  212                set('Ide ntityAndTr ustLocatio ns', 'KeyS tores');
  213                  set('Serve rPrivateKe yAlias', ' AI ');
  214                set('Ser verPrivate KeyPassPhr ase', keys tore_passw ord);
  215                set('Use ServerCert s', 'true' );
  216                
  217                # TBD :  May want t o delete.
  218                  #set('Outb oundPrivat eKeyAlias' , ' AI ');
  219                #set('Ou tboundPriv ateKeyPass Phrase', k eystore_pa ssword);
  220          
  221                
  222    
  223   def create _messaging _resources (targets,  jmsResourc e):
  224           if  jmsResour ces[jmsRes ource] !=  {} :
  225                print 'C REATE JMS  SYSTEM MOD ULE ' + jm sResource;
  226                cd('/');
  227                module =  cmo.creat eJMSSystem Resource(j msResource s[jmsResou rce]['jms_ system_res ource_name ']);
  228                #module_ targets =  module.get Targets();
  229                #module_ targets.ap pend(targe ts);
  230                #module. setTargets (module_ta rgets);
  231                cd('/JMS SystemReso urces/' +  jmsResourc es[jmsReso urce]['jms _system_re source_nam e']);
  232                set('Tar gets', jar ray.array( [ObjectNam e('com.bea :Name=' +  cluster_na me + ',Typ e=Cluster' )], Object Name));
  233                module.c reateSubDe ployment(j msResource s[jmsResou rce]['sub_ deployment _name']);
  234                
  235                resource  = module. getJMSReso urce();
  236                print 'C REATE CONN ECTION FAC TORY';
  237                for i in  range(len (jmsResour ces[jmsRes ource]['co nnection_f actory_nam es'])):
  238                    reso urce.creat eConnectio nFactory(j msResource s[jmsResou rce]['conn ection_fac tory_names '][i]);
  239                    conn ection_fac tory = res ource.look upConnecti onFactory( jmsResourc es[jmsReso urce]['con nection_fa ctory_name s'][i]);
  240                    conn ection_fac tory.setJN DIName(jms Resources[ jmsResourc e]['connec tion_facto ry_jndi_na mes'][i]);
  241                    conn ection_fac tory.setDe faultTarge tingEnable d(true);
  242                    conn ection_fac tory.getTr ansactionP arams().se tTransacti onTimeout( 0);
  243                    conn ection_fac tory.getTr ansactionP arams().se tXAConnect ionFactory Enabled(tr ue);
  244                    conn ection_fac tory.getLo adBalancin gParams(). setLoadBal ancingEnab led(true);
  245                    conn ection_fac tory.getLo adBalancin gParams(). setServerA ffinityEna bled(false );
  246           
  247                    dist ributed_er ror_queues  = [];
  248           
  249                print 'C REATE UNIF ORM DISTRI BUTED ERRO R QUEUE';
  250                for i in  range(len (jmsResour ces[jmsRes ource]['di stributed_ error_queu e_names']) ):
  251                    erro rQueue = r esource.lo okupUnifor mDistribut edQueue(jm sResources [jmsResour ce]['distr ibuted_err or_queue_n ames'][i]) ;
  252                    
  253                    if e rrorQueue  is None : 
  254                         errorQueue  = resourc e.createUn iformDistr ibutedQueu e(jmsResou rces[jmsRe source]['d istributed _error_que ue_names'] [i]);
  255                         errorQueue .setJNDINa me(jmsReso urces[jmsR esource][' distribute d_error_qu eue_jndi_n ames'][i]) ;
  256                         errorQueue .setLoadBa lancingPol icy('Round -Robin');
  257                         errorQueue .setSubDep loymentNam e(jmsResou rces[jmsRe source]['s ub_deploym ent_name'] );
  258           
  259                    dist ributed_er ror_queues .insert(i,  errorQueu e);
  260           
  261                print 'D IST ERR Q  LEN ' +  s tr(len(dis tributed_e rror_queue s));
  262                 
  263                print 'C REATE UNIF ORM DISTRI BUTED QUEU E';
  264                for i in  range(len (jmsResour ces[jmsRes ource]['di stributed_ queue_name s'])):
  265                    reso urce.creat eUniformDi stributedQ ueue(jmsRe sources[jm sResource] ['distribu ted_queue_ names'][i] );
  266                    dist ributed_qu eue = reso urce.looku pUniformDi stributedQ ueue(jmsRe sources[jm sResource] ['distribu ted_queue_ names'][i] );
  267                    dist ributed_qu eue.setJND IName(jmsR esources[j msResource ]['distrib uted_queue _jndi_name s'][i]);
  268                    dist ributed_qu eue.setLoa dBalancing Policy('Ro und-Robin' );
  269                    dist ributed_qu eue.setSub Deployment Name(jmsRe sources[jm sResource] ['sub_depl oyment_nam e']);
  270                    dist ributed_qu eue.setFor wardDelay( 30);
  271                     
  272                    dist ributed_qu eue.getDel iveryFailu reParams() .setRedeli veryLimit( 3);
  273                    dist ributed_qu eue.getDel iveryFailu reParams() .setExpira tionPolicy ('Redirect ');
  274                    dist ributed_qu eue.getDel iveryFailu reParams() .setErrorD estination (distribut ed_error_q ueues[i]);
  275                    dist ributed_qu eue.getDel iveryParam sOverrides ().setRede liveryDela y(2000);
  276                 
  277                print 'C REATE FILE  STORES AN D JMS SERV ERS';
  278                 
  279                sub_depl oyment_tar gets = [];
  280                for i in  range(len (machine_l isten_addr esses)):
  281                    for  j in range (nms_machi nes):
  282                         print 'Cre ating Pers istent Fil e Store :  ' + jmsRes ource + '_ filestore_ ms' + repr (i) + chr( 97 + j)
  283                         cd('/');
  284                         file_store  = cmo.cre ateFileSto re(jmsReso urce + '_f ilestore_m s' + repr( i) + chr(9 7+j));
  285                         file_store .setDirect ory(domain _home);
  286                         cd('/FileS tores/' +  jmsResourc e + '_file store_ms'  + repr(i)  + chr(97 +  j))
  287                         set('Targe ts', jarra y.array([O bjectName( 'com.bea:N ame=' + do main_name  + '.ms' +  repr(i) +  chr(97 + j ) + ',Type =Server')] , ObjectNa me));
  288                         # file_sto re.setTarg ets(jarray .array([Ob jectName(' com.bea:Na me=' + dom ain_name +  '.ms' + r epr(i) + c hr(97 + j)  + ',Type= Server')],  ObjectNam e));
  289           
  290                         print 'Cre ating jms  server : '  + domain_ name + '.'  + jmsReso urce + '.j ms' + repr (i) + chr( 97 + j)
  291                         cd('/');
  292                         jms_server  = cmo.cre ateJMSServ er(domain_ name + '.'  + jmsReso urce + '.j ms' + repr (i) + chr( 97 + j));
  293                         jms_server .setPersis tentStore( file_store );
  294           
  295                         print 'Set ting JMS S erver Targ ets'
  296                         cd('/Deplo yments/' +  domain_na me + '.' +  jmsResour ce + '.jms ' + repr(i ) + chr(97  + j));
  297                         set('Targe ts', jarra y.array([O bjectName( 'com.bea:N ame=' + do main_name  + '.ms' +  repr(i) +  chr(97 + j ) +',Type= Server')],  ObjectNam e));
  298                         #jms_serve r.setTarge ts(jarray. array([Obj ectName('c om.bea:Nam e=' + doma in_name +  '.ms' + re pr(i) + ch r(97 + j)  +',Type=Se rver')], O bjectName) );
  299                        
  300                         # set the  target of  the subdep loyment to  the jms s erver for  the machin e
  301                         cd('/JMSSy stemResour ces/' + jm sResources [jmsResour ce]['jms_s ystem_reso urce_name' ] + '/SubD eployments /' + jmsRe sources[jm sResource] ['sub_depl oyment_nam e'])
  302                         set('Targe ts', jarra y.array([O bjectName( 'com.bea:N ame=' + do main_name  + '.' + jm sResource  + '.jms' +  repr(i) +  chr(97 +  j) + ',Typ e=JMSServe r')], Obje ctName));
  303           
  304           cd ('/');
  305           
  306        
  307   def create _data_sour ce(targets ):
  308       for i  in range(l en(data_so urce_names )):
  309           pr int 'CREAT E DATA SOU RCE';
  310           da ta_source  = cmo.crea teJDBCSyst emResource (data_sour ce_names[i ]);
  311           da ta_source_ targets =  data_sourc e.getTarge ts();
  312           da ta_source_ targets.ap pend(targe ts);
  313           da ta_source. setTargets (data_sour ce_targets );
  314           jd bc_resourc e = data_s ource.getJ DBCResourc e();
  315           jd bc_resourc e.setName( data_sourc e_names[i] );
  316            
  317           da ta_source_ params = j dbc_resour ce.getJDBC DataSource Params();
  318           na mes = [dat a_source_j ndi_names[ i]];
  319           da ta_source_ params.set JNDINames( names);
  320           #d ata_source _params.se tGlobalTra nsactionsP rotocol('E mulateTwoP haseCommit ');
  321           #d ata_source _params.se tGlobalTra nsactionsP rotocol('L oggingLast Resource') ;
  322           dr iver_param s = jdbc_r esource.ge tJDBCDrive rParams();
  323           dr iver_param s.setUrl(d ata_source _url[i]);
  324           dr iver_param s.setDrive rName(data _source_dr iver[i]);
  325           dr iver_param s.setPassw ord(data_s ource_pass words[i]);
  326           dr iver_prope rties = dr iver_param s.getPrope rties();
  327           dr iver_prope rties.crea teProperty ('user');
  328           us er_propert y = driver _propertie s.lookupPr operty('us er');
  329           us er_propert y.setValue (data_sour ce_users[i ]);
  330            
  331           co nnection_p ool_params  = jdbc_re source.get JDBCConnec tionPoolPa rams();
  332           co nnection_p ool_params .setTestTa bleName(da ta_source_ test[i]);
  333           co nnection_p ool_params .setConnec tionCreati onRetryFre quencySeco nds(30);
  334           co nnection_p ool_params .setStatem entCacheSi ze(0);
  335           co nnection_p ool_params .setInitSq l(data_sou rce_init_s ql[i])
  336        
  337   def create _gridlink_ data_sourc e(targets) :
  338       for i  in range(l en(data_so urce_names )):
  339           pr int 'CREAT E GRIDLINK  DATA SOUR CE';
  340           da ta_source  = cmo.crea teJDBCSyst emResource (data_sour ce_names[i ]);
  341           da ta_source_ targets =  data_sourc e.getTarge ts();
  342           da ta_source_ targets.ap pend(targe ts);
  343           da ta_source. setTargets (data_sour ce_targets );
  344            
  345           jd bc_resourc e = data_s ource.getJ DBCResourc e();
  346           jd bc_resourc e.setName( data_sourc e_names[i] );
  347            
  348           da ta_source_ params = j dbc_resour ce.getJDBC DataSource Params();
  349           na mes = [dat a_source_j ndi_names[ i]];
  350           da ta_source_ params.set JNDINames( names);
  351           da ta_source_ params.set GlobalTran sactionsPr otocol('Em ulateTwoPh aseCommit' );
  352           #d ata_source _params.se tGlobalTra nsactionsP rotocol('L oggingLast Resource') ;
  353            
  354           dr iver_param s = jdbc_r esource.ge tJDBCDrive rParams();
  355           dr iver_param s.setUrl(d ata_source _url);
  356           dr iver_param s.setDrive rName(data _source_dr iver);
  357           dr iver_param s.setPassw ord(data_s ource_pass words[i]);
  358           dr iver_prope rties = dr iver_param s.getPrope rties();
  359           dr iver_prope rties.crea teProperty ('user');
  360           us er_propert y = driver _propertie s.lookupPr operty('us er');
  361           us er_propert y.setValue (data_sour ce_users[i ]);
  362            
  363           co nnection_p ool_params  = jdbc_re source.get JDBCConnec tionPoolPa rams();
  364           co nnection_p ool_params .setTestTa bleName(da ta_source_ test);
  365           co nnection_p ool_params .setConnec tionCreati onRetryFre quencySeco nds(30);
  366           co nnection_p ool_params .setStatem entCacheSi ze(0);
  367            
  368           or acle_param s = jdbc_r esource.ge tJDBCOracl eParams();
  369           or acle_param s.setFanEn abled(java .lang.Bool ean('true' ));
  370           or acle_param s.setOnsNo deList(dat a_source_o ns_node_li st);
  371           or acle_param s.setOnsWa lletFile(' ');
  372           or acle_param s.unSet('O nsWalletPa ssword');
  373           or acle_param s.unSet('O nsWalletPa sswordEncr ypted');
  374           or acle_param s.setActiv eGridlink( java.lang. Boolean('t rue'));
  375  
  376   def create _users_and _map_roles ():
  377       print  'START SER VER CONFIG ';
  378       server Config();
  379       print  'CREATE US ERS AND MA P ROLES';
  380       securi ty_realm =  cmo.getSe curityConf iguration( ).getDefau ltRealm();
  381       authen tication_p rovider =  security_r ealm.looku pAuthentic ationProvi der('Defau ltAuthenti cator');
  382       authen tication_p rovider.cr eateUser(' employee',  'welcome1 ', 'an emp loyee');
  383       authen tication_p rovider.cr eateUser(' manager',  'welcome1' , 'a manag er');
  384       authen tication_p rovider.cr eateGroup( 'employees ', 'employ ee group') ;
  385       authen tication_p rovider.cr eateGroup( 'managers' , 'manager  group');
  386       authen tication_p rovider.ad dMemberToG roup('empl oyees', 'e mployee');
  387       authen tication_p rovider.ad dMemberToG roup('mana gers', 'ma nager');
  388       #role_ mapper = s ecurity_re alm.lookup RoleMapper ('XACMLRol eMapper');
  389       #role_ expression  = role_ma pper.getRo leExpressi on(None, ' Admin');
  390       #role_ mapper.set RoleExpres sion(None,  'Admin',  role_expre ssion + '| Grp(employ ees)');
  391       #role_ expression  = role_ma pper.getRo leExpressi on(None, ' Deployer') ;
  392       #role_ mapper.set RoleExpres sion(None,  'Deployer ', role_ex pression +  '|Grp(man agers)');
  393    
  394   def start_ edit_mode( ):
  395       print  'START EDI T MODE';
  396       edit() ;
  397       startE dit();
  398    
  399   def save_a nd_active_ changes():
  400       print  'SAVE AND  ACTIVATE C HANGES';
  401       save() ;
  402       activa te(block=' true');
  403  
  404   def create _jms_serve rs():
  405       print  'CREATE JM S SERVERS' ;
  406       sub_de ployment_t argets = [ ];
  407       for i  in range(l en(machine _listen_ad dresses)):
  408           fo r j in ran ge(nms_mac hines):
  409                print 'C reating Pe rsistent F ile Store  : ' + 'fil estore_ms'  + repr(i)  + chr(97  + j)
  410                cd('/');
  411                file_sto re = cmo.c reateFileS tore('file store_ms'  + repr(i)  + chr(97+j ));
  412                file_sto re.setDire ctory(doma in_home);
  413                cd('/Fil eStores/fi lestore_ms ' + repr(i ) + chr(97  + j))
  414                set('Tar gets', jar ray.array( [ObjectNam e('com.bea :Name=' +  domain_nam e + '.ms'  + repr(i)  + chr(97 +  j) + ',Ty pe=Server' )], Object Name));
  415                # file_s tore.setTa rgets(jarr ay.array([ ObjectName ('com.bea: Name=' + d omain_name  + '.ms' +  repr(i) +  chr(97 +  j) + ',Typ e=Server') ], ObjectN ame));
  416  
  417                print 'C reating jm s server :  ' + domai n_name + ' .jms' + re pr(i) + ch r(97 + j)
  418                cd('/');
  419                jms_serv er = cmo.c reateJMSSe rver(domai n_name + ' .jms' + re pr(i) + ch r(97 + j)) ;
  420                jms_serv er.setPers istentStor e(file_sto re);
  421  
  422                print 'S etting JMS  Server Ta rgets'
  423                cd('/Dep loyments/'  + domain_ name + '.j ms' + repr (i) + chr( 97 + j));
  424                set('Tar gets', jar ray.array( [ObjectNam e('com.bea :Name=' +  domain_nam e + '.ms'  + repr(i)  + chr(97 +  j) +',Typ e=Server') ], ObjectN ame));
  425                #jms_ser ver.setTar gets(jarra y.array([O bjectName( 'com.bea:N ame=' + do main_name  + '.ms' +  repr(i) +  chr(97 + j ) +',Type= Server')],  ObjectNam e));
  426  
  427                print 's ub_deplome nt_targets '
  428                sub_depl oyment_tar gets.appen d(ObjectNa me(repr(jm s_server.g etObjectNa me())));
  429  
  430       cd('/J MSSystemRe sources/'+  jms_syste m_resource _name +'/S ubDeployme nts/' + su b_deployme nt_name);
  431       set('T argets', j array.arra y(sub_depl oyment_tar gets, Obje ctName));
  432       cd('/' ); 
  433  
  434  
  435   connect_to _admin_ser ver();
  436    
  437   start_edit _mode();
  438    
  439   # #cluster  = create_ dynamic_cl uster();
  440    
  441   # #create_ machines() ;
  442    
  443   cluster =  create_clu ster();
  444    
  445   create_mac hines_and_ servers(cl uster);
  446    
  447   save_and_a ctive_chan ges();
  448    
  449   start_edit _mode();
  450    
  451   create_mes saging_res ources(clu ster, 'phr mgr');
  452  
  453   create_mes saging_res ources(clu ster, 'use rmgmt');
  454    
  455   create_mes saging_res ources(clu ster, 'bbm i');
  456  
  457   create_mes saging_res ources(clu ster, 'bat ch');
  458  
  459   create_dat a_source(c luster);
  460  
  461   setJtaTran sactionTim eout();
  462    
  463   # #create_ gridlink_d ata_source (cluster);
  464   # create_j ms_servers (); 
  465   save_and_a ctive_chan ges();
  466    
  467   # #create_ users_and_ map_roles( );
  468    
  469   print 'DIS CONNECT FR OM THE ADM IN SERVER' ;
  470   disconnect ();   
  471  
  472  
  473