9ab3ae93cd
2008/06/25 11:06:47 cn 1.2.8.1: #i91008# enhance possible parameter
187 lines
No EOL
5.6 KiB
Bash
Executable file
187 lines
No EOL
5.6 KiB
Bash
Executable file
#!/bin/sh
|
|
#*************************************************************************
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
#
|
|
# Copyright 2008 by Sun Microsystems, Inc.
|
|
#
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
|
#
|
|
# $RCSfile: cwscheckapi,v $
|
|
#
|
|
# $Revision: 1.3 $
|
|
#
|
|
# This file is part of OpenOffice.org.
|
|
#
|
|
# OpenOffice.org is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU Lesser General Public License version 3
|
|
# only, as published by the Free Software Foundation.
|
|
#
|
|
# OpenOffice.org is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU Lesser General Public License version 3 for more details
|
|
# (a copy is included in the LICENSE file that accompanied this code).
|
|
#
|
|
# You should have received a copy of the GNU Lesser General Public License
|
|
# version 3 along with OpenOffice.org. If not, see
|
|
# <http://www.openoffice.org/license.html>
|
|
# for a copy of the LGPLv3 License.
|
|
#***********************************************************************/
|
|
|
|
|
|
EXIT_SUCCESS=0
|
|
EXIT_FAILURE=1
|
|
EXIT_ERROR=2
|
|
EXIT_BUG=10
|
|
|
|
usage() {
|
|
echo "Usage: $SCRIPTNAME [-m MODULE1[,MODULEn]] [-o] [-h] [-d] [-i] [-t] [-s] [-a]" >&2
|
|
echo "" >&2
|
|
echo "[-m] list of modules to test like: '-m sw,sc,sd' or '-m all' for all modules" >&2
|
|
echo "" >&2
|
|
echo "[-o] force OpenOffice.org installation instead of StarOffice" >&2
|
|
echo "" >&2
|
|
echo "[-d] debug installation and UnoAPI-Tests" >&2
|
|
echo "" >&2
|
|
echo "[-i] debug installation" >&2
|
|
echo "" >&2
|
|
echo "[-t] debug UnoAPI-Tests" >&2
|
|
echo "" >&2
|
|
echo "[-s] skip installation of Office" >&2
|
|
echo "" >&2
|
|
echo "[-a] NoCwsAttach: do not attach UnoAPI-Test result to EIS database" >&2
|
|
echo "" >&2
|
|
echo "further informations: http://wiki.services.openoffice.org/wiki/Cwscheckapi" >&2
|
|
echo "" >&2
|
|
exit $EXIT_FAILURE
|
|
}
|
|
DEBUG_I=false
|
|
DEBUG_T=false
|
|
INSTALL=true
|
|
ATTACH=ture
|
|
MODULES="auto"
|
|
OOO=false
|
|
|
|
while getopts ':m:ditsaho' OPTION ; do
|
|
case $OPTION in
|
|
d) DEBUG_I=true
|
|
DEBUG_T=true
|
|
;;
|
|
m) MODULES="$OPTARG"
|
|
;;
|
|
o) OOO=true
|
|
;;
|
|
i) DEBUG_I=true
|
|
;;
|
|
t) DEBUG_T=true
|
|
;;
|
|
s) INSTALL=false
|
|
;;
|
|
a) ATTACH=false
|
|
;;
|
|
h) usage $EXIT_SUCCESS
|
|
;;
|
|
\?) echo "unkown option \"-$OPTARG\"." >&2
|
|
usage $EXIT_ERROR
|
|
;;
|
|
*) echo "this is not possible...">&2
|
|
usage $EXIT_BUG
|
|
;;
|
|
esac
|
|
done
|
|
|
|
shift `expr $OPTIND - 1`
|
|
|
|
|
|
DESTPATH=/tmp/$USER/cwscheckapi
|
|
LOCALINSTALLDIR=$DESTPATH/office
|
|
LOCALUNPACKDIR=$DESTPATH/unpack
|
|
export LOCALINSTALLDIR
|
|
export LOCALUNPACKDIR
|
|
|
|
date 2>&1
|
|
|
|
if [ $INSTALL = true ]; then
|
|
|
|
|
|
if [ $DEBUG_I = true ]; then
|
|
echo "start installation: `date`"
|
|
echo call "$SOLARENV/bin/installoffice.pl -cwscheckapi true -dest $LOCALINSTALLDIR -debug $DEBUG_I"
|
|
fi
|
|
perl -w $SOLARENV/bin/installoffice.pl -cwscheckapi true -dest $LOCALINSTALLDIR -ooo $OOO -debug $DEBUG_I
|
|
|
|
EXITVAL=$?
|
|
|
|
if [ $EXITVAL -ne 0 ]; then
|
|
echo "ERROR: could not install office"
|
|
exit $EXITVAL
|
|
fi
|
|
echo "`date` installation successfull, start testing...."
|
|
fi
|
|
|
|
if [ $DEBUG_T = true ]; then
|
|
echo find $LOCALINSTALLDIR -name soffice
|
|
fi
|
|
|
|
OFFICEBIN=`find $LOCALINSTALLDIR -name soffice`
|
|
|
|
if [ ! -f "$OFFICEBIN" ]; then
|
|
echo "could not find 'soffice' in subfolders of $LOCALINSTALLDIR";
|
|
exit 1
|
|
fi
|
|
|
|
|
|
JARFOLDER=$SOLARVERSION/$INPATH/bin$UPDMINOREXT
|
|
SOLVER_LIB=$SOLARVERSION/$INPATH/lib$UPDMINOREXT
|
|
myCLASSPATH=$JARFOLDER/OOoRunner.jar:$JARFOLDER/ridl.jar:$JARFOLDER/unoil.jar:$JARFOLDER/jurt.jar:$JARFOLDER/juh.jar:$JARFOLDER/java_uno.jar
|
|
myCLASSPATH=$myCLASSPATH:$JARFOLDER/ridl.jar:$JARFOLDER/unoil.jar:$JARFOLDER/jurt.jar:$JARFOLDER/juh.jar:$JARFOLDER/java_uno.jar
|
|
myCLASSPATH=$myCLASSPATH:/net/unoapi/export/unoapi/bin/mysql.jar:$SOLVER_LIB
|
|
PARAM=""
|
|
if [ -n "$JAVAI" ]; then
|
|
JAVABIN=$JAVAI
|
|
elif [ -n "$JAVA_HOME" ]; then
|
|
JAVABIN=$JAVA_HOME/bin/java
|
|
else
|
|
echo "please set environment variable JAVA_HOME"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -n "$WORK_STAMP" ]; then
|
|
if [ -n "$CWS_WORK_STAMP" ]; then
|
|
PARAM="$PARAM -Version cws_${CWS_WORK_STAMP}"
|
|
else
|
|
echo "######"
|
|
echo CAUTION! You\'re working on the MWS
|
|
echo "######"
|
|
PARAM="$PARAM -Version ${WORK_STAMP}_${UPDMINOR}"
|
|
fi
|
|
fi
|
|
|
|
PARAM="$PARAM -cmd '$OFFICEBIN -nofirststartwizard -norestore -nocrashreport -nolockcheck -accept=pipe,name=$USER;urp;'"
|
|
PARAM="$PARAM -cs pipe,name=$USER"
|
|
PARAM="$PARAM -NoOffice true"
|
|
PARAM="$PARAM -OOO_EnvSet setsolar"
|
|
PARAM="$PARAM -SRC_ROOT $SRC_ROOT"
|
|
PARAM="$PARAM -COMP_ENV $INPATH"
|
|
PARAM="$PARAM -Shell /usr/bin/tcsh"
|
|
PARAM="$PARAM -tb java_complex"
|
|
PARAM="$PARAM -TimeOut 90000"
|
|
PARAM="$PARAM -o complex.unoapi.CheckModuleAPI::module($MODULES)"
|
|
if [ $ATTACH = false ]; then
|
|
PARAM="$PARAM -nca true"
|
|
fi
|
|
if [ $DEBUG_T = true ]; then
|
|
PARAM="$PARAM -debug true -log true"
|
|
fi
|
|
|
|
#XDEBUG=" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8001 "
|
|
COMMAND="$JAVABIN -Xmx120m $XDEBUG -cp $myCLASSPATH org.openoffice.Runner $PARAM $*"
|
|
echo "( unset LD_LIBRARY_PATH ; $COMMAND )"
|
|
|
|
LOGFILE=$DESTPATH/cwscheckapi.log
|
|
( unset LD_LIBRARY_PATH ; $COMMAND | tee $LOGFILE)
|
|
|
|
echo
|
|
echo A logfile could be found here: $LOGFILE
|
|
|
|
date 2>&1 |