#!/bin/sh ## /public/scripts/pclcmistribute ## A Script to distribute compiled binaries and libraries to a WIN/NT LCM server. ## Globecom Classes files are copied into the /install/weblogic/classes. ## Also /usr/local/gwa bin and conf directories are created or updated. ## The file /install/weblogic/EJB_Param.ini is updated. ## The external and Admin jar files are copied. ## Two input parameters are required: ## 1. Build name ## 2. The release name ## 3. The installation package root directory ## 4. The drive where the software should be installed into. ## Last modified: 3.2.2002 if [ $# -lt 4 ] then echo "" echo "Usage: $0 Build-name configuration-name installation-source-dir install-drive" echo "Example: $0 Build3.0.0_9 prd_3.0.0 /cygdrive/e/prd_3.0.0/ins c" echo "" exit 1 fi BUILDNAME=$1 CNFNAME=$2 CNFN=`echo $CNFNAME | awk -F. '{print $1}'` INSDIR=$3 if [ ! -d $INSDIR ] then echo "" echo $INSDIR" is not exist. Exit..." echo "" exit 1 fi VERDIR=`dirname $INSDIR` WINDRIVE=$4 INSDRIVE="/cygdrive/"$WINDRIVE if [ ! -d $INSDRIVE ] then echo "" echo $INSDRIVE" is not exist. Exit..." echo "" exit 1 fi ## Host name compute HST=`hostname` DMN=`ipconfig | grep "DNS Suffix" | awk '{print $NF}'` HOSTN=$HST"."$DMN ## Current date and time variable set CURDATE=`date +%Y%m%d%H%M` echo "Create Globecom software directories" GWADIR=$INSDRIVE"/usr/local/gwa" if [ -d $GWADIR ] then PREVGWA=$GWADIR"_"$CURDATE mv $GWADIR $PREVGWA echo "" echo "Previous version of "$GWADIR" was saved as "$PREVGWA echo "" fi rm -rf $GWADIR mkdir -p $GWADIR mkdir $GWADIR/bin $GWADIR/conf $GWADIR/logs $GWADIR/old_logs [ ! -d $INSDRIVE/var ] && mkdir $INSDRIVE/var [ ! -d $INSDRIVE/var/zax ] && mkdir $INSDRIVE/var/zax [ ! -d $INSDRIVE/inetpub/ftproot/publisher ] && mkdir $INSDRIVE/inetpub/ftproot/publisher [ ! -d $INSDRIVE/inetpub/ftproot/publisherlog ] && mkdir $INSDRIVE/inetpub/ftproot/publisherlog # Determine system type SYS=WIN if test "$SYS" = "WIN" then echo 'Install on WIN system\n' RELNAME=SUN-Rel-$1 else echo "Unknown system to install Globecom server on.\n" exit fi # Copy the executables to $GWADIR/bin cd $GWADIR/bin echo " Copying binaries ...." cp $INSDIR/XmlConvertor.exe . # Copy the configuration files to $GWADIR/conf cd $GWADIR/conf echo " Copying configuration files ...." cp $INSDIR/conf/GLB/trace.conf ./trace.conf # Copy the Dlls to system directory echo " Copying Xerces dlls ...." cd $SYSTEMROOT/system32 rm -f xerces*.dll cp $INSDIR/CI/xerces*.dll . ## Copy the java classes and the deployment files into ~weblogic/classes [ ! -d $INSDRIVE/weblogic/classes ] && mkdir $INSDRIVE/weblogic/classes if [ "$CNFN" = "prd_2" ] then [ ! -d $INSDRIVE/weblogic/classes/globecom/deploy ] && mkdir $INSDRIVE/weblogic/classes/globecom/deploy cd $INSDRIVE/weblogic/classes/globecom/deploy rm -f * cp -f $INSDIR/deploy/* $INSDRIVE/weblogic/classes/globecom/deploy else [ ! -d $INSDRIVE/weblogic/classes/deploy ] && mkdir $INSDRIVE/weblogic/classes/deploy cd $INSDRIVE/weblogic/classes/deploy rm -f * cp -f $INSDIR/deploy/* $INSDRIVE/weblogic/classes/deploy fi # Copy the Java Jar files JARSDIR=$INSDRIVE"/weblogic/classes/Jars" if [ -d $JARSDIR ] then rm -f $INSDRIVE/weblogic/classes/Jars/*.jar else mkdir -p $JARSDIR fi cp -f $INSDIR/Java/Jars/* $INSDRIVE/weblogic/classes/Jars # Handling EJB_Param.ini echo " Update EJB_Param.ini ...." EJBPFILE=$INSDRIVE/weblogic/EJB_Param.ini if [ -f $EJBPFILE ] then PREVEJB=$EJBPFILE"_"$CURDATE mv $EJBPFILE $PREVEJB echo "" echo "Previous version of EJB_Param.ini was saved as "$PREVEJB echo "" fi cp $INSDIR/conf/GLB/EJB_Param.ini_standalone $EJBPFILE sed 's/win-drive/'$WINDRIVE'/' $EJBPFILE > $EJBPFILE.$$ mv $EJBPFILE.$$ $EJBPFILE sed 's/host-name/'$HST'/' $EJBPFILE > $EJBPFILE.$$ mv $EJBPFILE.$$ $EJBPFILE HOSTIP=`ipconfig | grep "IP Address" | awk '{print $NF}'` sed 's/host-ip/'$HOSTIP'/' $EJBPFILE > $EJBPFILE.$$ mv $EJBPFILE.$$ $EJBPFILE # Create preview directory echo "Create preview directory ...." PREVIEWDIR=`grep SECURED_PATH $EJBPFILE | awk '{print $NF}' | awk -F: '{print "/cygdrive/"$1$2"preview"}'` [ ! -d $PREVIEWDIR ] && mkdir -p $PREVIEWDIR # Create LPTPP directory echo "Create LPTPP directory ...." LPTPPDIR=`grep LPTPP_FILES_PATH $EJBPFILE | awk '{print $NF}' | awk -F: '{print "/cygdrive/"$1$2}'` [ ! -d $LPTPPDIR ] && mkdir -p $LPTPPDIR # Create Logs directory echo "Create Logs directory ...." LOGSDIR=`grep "^LOGGER_DIRECTORY" $EJBPFILE | awk '{print $NF}' | awk -F: '{print "/cygdrive/"$1$2}'` [ ! -d $LOGSDIR ] && mkdir -p $LOGSDIR # Create old Logs directory echo "Create old Logs directory ...." OLDLOGSDIR=`grep "OLD_LOGGER_DIRECTORY" $EJBPFILE | awk '{print $NF}' | awk -F: '{print "/cygdrive/"$1$2}'` [ ! -d $OLDLOGSDIR ] && mkdir -p $OLDLOGSDIR # Handling weblogic.properties echo " Update weblogic.properties ...." WPFILE=$INSDRIVE/weblogic/weblogic.properties if [ -f $WPFILE ] then PREVWP=$WPFILE"_"$CURDATE mv $WPFILE $PREVWP echo "" echo "Previous version of weblogic.properties was saved as "$PREVWP fi cp $INSDIR/conf/GLB/weblogic.properties_standalone $WPFILE sed 's/win-drive/'$WINDRIVE'/' $WPFILE > $WPFILE.$$ mv $WPFILE.$$ $WPFILE sed 's/host-name/'$HST'/' $WPFILE > $WPFILE.$$ mv $WPFILE.$$ $WPFILE sed 's/db-srvr/'$HST'/' $WPFILE > $WPFILE.$$ mv $WPFILE.$$ $WPFILE sed 's/db-pw/informix/' $WPFILE > $WPFILE.$$ mv $WPFILE.$$ $WPFILE # Create SDU directory echo "Create SDU directory ...." SDUDIR="/cygdrive/"$WINDRIVE"/sdu" [ ! -d $SDUDIR ] && mkdir -p $SDUDIR # Create SDU-misc directory echo "Create SDU_misc directory ...." SDUMISCDIR="/cygdrive/"$WINDRIVE"/sdu_misc" [ ! -d $SDUMISCDIR ] && mkdir -p $SDUMISCDIR # Handling startWebLogic.cmd echo " Update startWebLogic.cmd ...." SWLFILE=$INSDRIVE/weblogic/startWebLogic.cmd if [ -f $SWLFILE ] then PREVSWL=$SWLFILE"_"$CURDATE mv $SWLFILE $PREVSWL echo "" echo "Previous version of startWebLogic.cmd was saved as "$PREVSWL fi cp $INSDIR/conf/GLB/startWebLogic.cmd $SWLFILE sed 's/win-drive/'$WINDRIVE'/' $SWLFILE > $SWLFILE.$$ mv $SWLFILE.$$ $SWLFILE # Copying chmod.exe program echo " Update chmod.exe ...." CHMODFILE=$INSDRIVE/weblogic/chmod.exe if [ ! -f $CHMODFILE ] then if [ -f $INSDIR/conf/GLB/chmod.exe ] then cp $INSDIR/conf/GLB/chmod.exe $CHMODFILE fi fi # Copying license files echo " Update weblogic rishuy files ...." LICJFILE=$INSDRIVE/weblogic/license/WebLogicLicense.java if [ -f $LICJFILE ] then mv $LICJFILE $LICJFILE"_"$CURDATE fi cp $INSDIR/conf/GLB/WebLogicLicense.java $LICJFILE LICXFILE=$INSDRIVE/weblogic/license/WeblogicLicense.xml if [ -f $LICXFILE ] then mv $LICXFILE $LICXFILE"_"$CURDATE fi cp $INSDIR/conf/GLB/WeblogicLicense.xml $LICXFILE # Copy the images files echo " Copying images files ...." IMAGESDIR=$INSDRIVE/weblogic/images if [ -d $IMAGESDIR ] then rm -f $IMAGESDIR/* else mkdir -p $IMAGESDIR fi cp -f $INSDIR/images/* $IMAGESDIR # Copy the help files echo " Copying help files ...." HELPDIR=$INSDRIVE/weblogic/help if [ -d $HELPDIR ] then rm -f $HELPDIR/* else mkdir -p $HELPDIR fi cp -f $INSDIR/help/* $HELPDIR # Copy Admin and cancel html files echo " Copying Admin.html and Cancel.html files ...." HTMLDIR=$INSDRIVE/weblogic rm -f $HTMLDIR/Admin.html $HTMLDIR/Cancel.html cp -f $INSDIR/conf/GLB/Admin.html_standalone $HTMLDIR/Admin.html cp -f $INSDIR/conf/GLB/Cancel.html $HTMLDIR # Copy Database scripts files echo " Copying Database scripts ...." DBADIR=$INSDRIVE/MakeDB/Windows rm -rf $DBADIR mkdir -p $DBADIR cp -f $INSDIR/MakeDB/Windows/* $DBADIR # Copy public scripts files echo " Copying public scripts ...." SCRIPTSDIR=$INSDRIVE/scripts rm -rf $SCRIPTSDIR mkdir -p $SCRIPTSDIR cp -f $VERDIR/scripts/* $SCRIPTSDIR # Create log files directories echo " Create log files directories...." [ ! -d $INSDRIVE/weblogic/MgsLogFiles_new ] && mkdir $INSDRIVE/weblogic/MgsLogFiles_new [ ! -d $INSDRIVE/weblogic/MgsLogFiles_old ] && mkdir $INSDRIVE/weblogic/MgsLogFiles_old echo "---------------------------------------------------------------" exit 0