# DCofa.cfg: Collects Oracle Fusion Applications Information # $Id: DCofa.cfg,v 1.13 2015/02/18 07:21:05 RDA Exp $ # ARCS: $Header: /home/cvs/cvs/RDA_8/src/scripting/lib/collect/APPS/DCofa.cfg,v 1.13 2015/02/18 07:21:05 RDA Exp $ # # Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved. # # Change history # 20150217 KRA Extend support to pass arguments through -e option. ############################################################################### # Collect the Oracle Fusion Applications setup information ############################################################################### #------------------------------------------------------------------------------ # Module definition #------------------------------------------------------------------------------ col=${B_IN_USE} dsc='Collects Oracle Fusion Applications Information' pre=RDA:DCbegin req=?B_REQ_WREQ:OFM:DCwreq rpt=B_IN_USE trg=?B_REQ_WREQ:OFM:DCwreq var=not_used # Flow:in_use,B_IN_USE exe=sdcl { "var ${B_REQ_WREQ/T} = undef "var @{AUX.var} = (cond(${PRF.B_TESTS},'in_use','B_IN_USE')) " "macro check_home "{loop $nod (findDir(catDir($arg[0],'instance','domains'),'^\.+$','npv')) " {loop $dom (findDir($nod,'^\.+$','npv')) " {if grepFile(catFile($dom,'config','config.xml'),'^{$nod}}) " {var $dir = cleanNative([$hom,'instance','domains',$nod,$nam,'']) " var $top = catDir($hom,'instance','domains',$nod) " if grepFile(catFile($dir,'config','config.xml'),\ " '^{$nod,$nam} " } " } " } "} "elsif @{T_NODES} "{loop $nod (last) " {loop $sub (findDir($top=catDir($hom,'instance','domains',$nod),'^\.+$','nv')) " {next !grepFile(catFile($top,$sub,'config','config.xml'),\ " '^true,\ " B_MISSING_HOME=>true,\ " B_MISSING_PRODUCT=>true,\ " B_MISSING_WL_HOME=>true,\ " D_DOMAIN_HOME=>$key,\ " D_DOMAIN_ROOT=>$top,\ " T_DOMAIN_NAME=>$sub}) " next !?$tgt->get_attr('BEA_HOME') " next !?testFile('f',catFile(last,'domain-registry.xml')) " next exists($dup{$reg = last}) " loop $xml (xmlFind(xmlLoadFile($reg),'domain-registry/domain')) " {var $dir = cleanNative([xmlValue($xml,'location'),'']) " if grepFile(catFile($dir,'config','config.xml'),'^',length($dir),length($dom{$key}->[2]))) " {if expr('>',scalar(@dir = splitDir($dir)),1) " {var $nam = pop(@dir) " var $dom{getShortPath($dir,true)} = [catNative(@dir,''),$nam,$dir] " } " } " } " } " var $dup{$reg} = true " } " } "} "loop $dir (keys(%dom)) " call push(@itm,\ " nvl(findItem('DOM','D_DOMAIN_HOME',$dir,true),\ " defineTarget('DOM',{D_DOMAIN_ROOT=>$top = $dom{$dir}->[0],\ " T_DOMAIN_NAME=>$nam = $dom{$dir}->[1],\ " T_TITLE=>"Domain ${VAR.nam} (in ${VAR.top})"}))) "var ${AUX.dft} = [@itm] } [set_req_domain] typ=B dft=false dsc='Does OFA require Oracle WebLogic request handler execution?' nam=B_REQ_WREQ exe=sdcl { "var ($flg,%DOMAINS) = (false) "keep %DOMAINS "loop $tgt (@{I_DOMAINS}) "{var $dir = $tgt->get_first('D_DOMAIN_HOME') " next !grepFile(catFile($dir,'config','config.xml'),'^get_oid " var ${MOD.WREQ_APPS_OFA_${VAR.oid}.I_DOMAIN:\ " 'Target associated with the domain'} = $tgt " var ${MOD.WREQ_APPS_OFA_${VAR.oid}.T_TOP_FOCUS:\ " 'Focus areas for Oracle WebLogic Server Middleware collection'} = \ " 'Basic,Generic' " var ${MOD.WREQ_APPS_OFA_${VAR.oid}.T_DOM_FOCUS:\ " 'Focus areas for Oracle WebLogic Server domain collection'} = \ " 'APPS_OFA,ExtSnmCfg,NodDomCfg,NodDomLog,OFM_SOA,SrvErr' " var $DOMAINS{${MOD.WREQ_APPS_OFA_${VAR.oid}/I}->get_path} = $tgt " var $flg = true "} "var ${AUX.dft} = $flg } [loop_domains] typ=L dft=keys(%DOMAINS) dsc='Iterate on each domain' nam=-RUN/SDSL.K_OID var=loop:T_SERVERS #------------------------------------------------------------------------------ # Select the server(s) #------------------------------------------------------------------------------ [T_SERVERS] typ=M bef="\nServer list for '${T_TMP_NAM}' - domain home (in ${D_TMP_DOM}):" def="COL/${RUN.SDSL.K_OID}" dft='*' dsc='Domain server list' itm=[@{T_TMP_ITM}] pck=true val=E exe=sdcl { "var ($tgt,@itm) = ($DOMAINS{${RUN.SDSL.K_OID}}) "if ${PRF/B_OFM_IPS} " call push(@itm,${PRF/T_SERVER},${PRF/T_SERVER}) "elsif exists($SERVERS{$top = $tgt->get_first('D_DOMAIN_HOME')}) "{loop $srv (@{$SERVERS{$top}}) " {if ?testDir('d',catDir($top,'servers',$srv,'logs')) " call push(@itm,$srv,$srv) " } "} "else "{loop $srv (findDir(catDir($top,'servers'),'^\.+$','nv')) " {if ?testDir('d',catDir($top,'servers',$srv,'logs')) " call push(@itm,$srv,$srv) " } "} "var ${T_TMP_NAM/T} = $tgt->get_first('T_DOMAIN_NAME') "var ${D_TMP_DOM/T} = \ " catNative($tgt->get_first('D_DOMAIN_ROOT'),${T_TMP_NAM},'') "var @{T_TMP_ITM/T} = @itm }