diff options
Diffstat (limited to 'solenv/bin/cwscheckapi')
-rwxr-xr-x | solenv/bin/cwscheckapi | 361 |
1 files changed, 0 insertions, 361 deletions
diff --git a/solenv/bin/cwscheckapi b/solenv/bin/cwscheckapi deleted file mode 100755 index 63712be76623..000000000000 --- a/solenv/bin/cwscheckapi +++ /dev/null @@ -1,361 +0,0 @@ -#!/bin/bash -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# 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 - -# report the given error parameter to cwstestresult if the is one. -# 0: no error send ok or parameter $2 -# 1: failure -# 2...: incomplete -function reportError() -{ - ERRORCODE=$1 - if [ -e $SOLARENV/bin/cwstestresult.pl ]; then - if [ $ERRORCODE -eq 0 ]; then - PT_STATUS=${2:-ok} # use default 'ok' or $2 - elif [ $ERRORCODE -eq 1 ]; then - PT_STATUS=failed - else - PT_STATUS=incomplete - fi - - if [ "$OSTYPE" == "cygwin" ]; then - CWSENV=Windows - elif [ "$OSTYPE" == "linux" ]; then - CWSENV=Linux - elif [ "$OSTYPE" == "solaris" ]; then - CWSENV=SolarisX86 - else - CWSENV=Unknown - fi - perl $SOLARENV/bin/cwstestresult.pl -c $CWS_WORK_STAMP -n CWSCheckAPI -p $CWSENV $PT_STATUS - else - echo "No cwstestresult.pl found." - fi -} - -usage() { - echo "Usage: $SCRIPTNAME [-m MODULE1[,MODULEn]] [-k] [-o] [-h] [-d] [-u] [-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 "[-k] keep Office installation, otherwise it will be removed after test" >&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 "[-u] UseInstalledOffice: do not install an office" >&2 - echo "" >&2 - echo "further informations: http://wiki.services.openoffice.org/wiki/Cwscheckapi" >&2 - echo "" >&2 - exit $EXIT_FAILURE -} - -# we start cwscheckapi -reportError 0 running - -if [ "$PROEXT" != ".pro" ]; then - echo "ERROR: cwscheckapi works only on pro-versions" >&2 - reportError 2 - exit $EXIT_FAILURE -fi - -if [ x${USER}x = xx ]; then - if [ x${LOGNAME}x = xx ]; then - echo "ERROR: could not determine username. Please export variable USER" >&2 - reportError 2 - exit $EXIT_FAILURE - else - USER=$LOGNAME - export USER - fi -fi - - - -#DEBUG_I=false -DEBUG_T=false -INSTALL=true -ATTACH=true -MODULES="auto" -OOO=false -KEEPOFFICE=false -USE_INSTALLED_OFFICE=false - -while getopts ':m:dkutsaho' OPTION ; do - case $OPTION in - d) -# DEBUG_I=true - DEBUG_T=true - ;; - m) - MODULES="$OPTARG" - ;; - k) - KEEPOFFICE=true - ;; - o) - OOO=true - ;; -# i) -# DEBUG_I=true -# ;; - t) - DEBUG_T=true - ;; - s) - INSTALL=false - ;; - a) - ATTACH=false - ;; - u) - USE_INSTALLED_OFFICE=true - INSTALL=false - KEEPOFFICE=true - echo "make sure your office is started with parameter -accept=pipe,name=$USER;urp;" - ;; - 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` - -if [ -d /export/home/$USER ]; then - CWSCHECKAPIPATH=/export/home/$USER/cwscheckapi -else - if [ -w /export/home ]; then - mkdir /export/home/$USER - CWSCHECKAPIPATH=/export/home/$USER/cwscheckapi - else - CWSCHECKAPIPATH=/tmp/$USER/cwscheckapi - fi -fi - -# the following line is to cleanup old cwscheckapi-installations. It results form the first version of cwscheckapi -# The disk space on /tmp is limited. If a lot of users run cwscheckapi a lot of installed offices are in /tmp -# The new concept is to remove the offices after test. But old unused installations should be removed... -if [ $CWSCHECKAPIPATH != /tmp/$USER/cwscheckapi ]; then - rm -rf /tmp/$USER/cwscheckapi -fi - -LOCALINSTALLDIR=$CWSCHECKAPIPATH/office -LOCALUNPACKDIR=$CWSCHECKAPIPATH/unpack -export LOCALINSTALLDIR -export LOCALUNPACKDIR - -unset FORCE2ARCHIVE - -if [ $INSTALL = true ]; then - - date 2>&1 - -# 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" - reportError 2 - exit $EXITVAL - fi - echo "`date` installation successfull, start testing...." -fi - -SOFFICE="soffice" -PS=":" -CYGWIN="" - -SHELL="/bin/bash" -# cygwin: -if [ "$GUI" = "WNT" ]; then - SOFFICE="soffice.exe" - PS=";" - CYGWIN="-Cygwin true" - SHELL=$(which bash) - SHELL=$(cygpath -w $SHELL) - if [ ! -f $SHELL ]; then - echo "could not determine bash shell" - reportError 2 - exit 1 - fi -fi - -# if [ $DEBUG_T = true ]; then -# echo find $LOCALINSTALLDIR -name $SOFFICE -# fi - -if [ $USE_INSTALLED_OFFICE = false ]; then - - OFFICEBIN=`find $LOCALINSTALLDIR -name $SOFFICE` - - if [ ! -f "$OFFICEBIN" ]; then - echo "could not find 'soffice' in subfolders of $LOCALINSTALLDIR" - reportError 2 - exit 1 - fi - - if [ "$GUI" = "WNT" ]; then - # transform /tmp/... -> c:\tmp\... - OFFICEBIN=`cygpath -w $OFFICEBIN` - fi -else - OFFICEBIN=$SOFFICE - echo "Use already installed and running office." -fi - -JARFOLDER=$SOLARVERSION/$INPATH/bin$UPDMINOREXT -SOLVER_LIB=$SOLARVERSION/$INPATH/lib$UPDMINOREXT - -myCLASSPATH=${PS}${JARFOLDER}/ridl.jar${PS}\ -${JARFOLDER}/unoil.jar${PS}\ -${JARFOLDER}/jurt.jar${PS}\ -${JARFOLDER}/juh.jar${PS}\ -${JARFOLDER}/java_uno.jar - -myCLASSPATH=$myCLASSPATH${PS}\ -${JARFOLDER}/OOoRunner.jar - -myCLASSPATH=$myCLASSPATH${PS}\ -/net/unoapi/export/unoapi/bin/mysql.jar${PS}\ -$SOLVER_LIB - -PARAM="" -if [ -n "$JAVAI" ]; then - JAVABIN=$JAVAI -elif [ -n "$JAVA_HOME" ]; then - if [ "$OS$CPUNAME$CPU" = SOLARISSPARCU ]; then - JAVABIN=$JAVA_HOME/bin/sparcv9/java - else - JAVABIN=$JAVA_HOME/bin/java - fi -else - echo "please set environment variable JAVA_HOME" - reportError 2 - 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 are working on the MWS - echo "######" - PARAM="$PARAM -Version ${WORK_STAMP}_${UPDMINOR}" - fi -fi - -PARAM="$PARAM -cmd '$OFFICEBIN -nofirststartwizard -accept=pipe,name=$USER;urp; -norestore -nocrashreport -nolockcheck -enableautomation'" -PARAM="$PARAM -cs pipe,name=$USER" -PARAM="$PARAM -NoOffice true" -PARAM="$PARAM -SRC_ROOT $SRC_ROOT" -PARAM="$PARAM -COMP_ENV $OUTPATH" -PARAM="$PARAM -Shell $SHELL" -PARAM="$PARAM $CYGWIN" -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 - -# Sample command -# /so/env/Linux_JDK_1.5.0_06/bin/java -# -Xmx120m $XDEBUG -# -cp :/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/ridl.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/unoil.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/jurt.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/juh.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/java_uno.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/OOoRunner.jar:/net/unoapi/export/unoapi/bin/mysql.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/lib.m50 -# org.openoffice.Runner -# -Version cws_unoapi04 -# -cmd '/tmp/ll93751/cwscheckapi/office/staroffice9/program/soffice -nofirststartwizard -accept=pipe,name=ll93751;urp; -norestore -nocrashreport -nolockcheck -enableautomation' -# -cs pipe,name=ll93751 -# -NoOffice true -# -SRC_ROOT /net/so-cwsserv02/export/cws/unoapi04/DEV300/src.m50 -# -COMP_ENV unxlngi6 -# -Shell /bin/bash -# -tb java_complex -# -TimeOut 90000 -# -o 'complex.unoapi.CheckModuleAPI::module(auto)' - -# XDEBUG=" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9003,suspend=y " - -# set DEBUGAPI if you want to debug the checkapi -# DEBUGAPI=t - -COMMAND="$JAVABIN -Xmx120m $XDEBUG -cp $myCLASSPATH org.openoffice.Runner $PARAM $*" -echo "$COMMAND" - -LOGFILE=$CWSCHECKAPIPATH/cwscheckapi.log -$COMMAND | tee $LOGFILE -EXITVAL=$? - -if [ $KEEPOFFICE = false ]; then - echo "remove office instrallation in $LOCALINSTALLDIR..." - rm -rf $LOCALINSTALLDIR -fi - -echo -echo A logfile could be found here: $LOGFILE - -date 2>&1 - -# send the results via cwstestresult.pl to EIS -if [ $EXITVAL -eq 0 ]; then - reportError 0 ok -else - reportError 1 -fi |