formatted according to the nss tab 8 rules

This commit is contained in:
sonmi%netscape.com 2001-02-20 21:49:30 +00:00
parent df867a03d1
commit d56d55b69b
2 changed files with 480 additions and 478 deletions

View File

@ -9,18 +9,18 @@
#
# parameters
# ----------
# nssversion (supported: 30b, 31, tip)
# builddate (default - today)
# nssversion (supported: 30b, 31, tip)
# builddate (default - today)
#
# options
# -------
# -y answer all questions with y - use at your own risk...ignores warnings
# -s silent (only usefull with -y)
# -h, -? - you guessed right - displays this text
# -d debug
# -f <filename> - write the (error)output to filename
# -cron equivalient to -y -s -d -f $RESULTDIR/$HOST.nssqa
# -l <mozroot> run on a local build
# -y answer all questions with y - use at your own risk...ignores warnings
# -s silent (only usefull with -y)
# -h, -? - you guessed right - displays this text
# -d debug
# -f <filename> - write the (error)output to filename
# -cron equivalient to -y -s -d -f $RESULTDIR/$HOST.nssqa
# -l <mozroot> run on a local build
#
# 12/1/00
# took out the (unused) local directory for releasebuild QA on NT
@ -28,27 +28,27 @@
# took hardcoded machinenames out
########################################################################
O_OPTIONS=ON # accept options (see above for listing)
WIN_SET_LOCALDIRS=ON # run QA in a local directory rather than accross
# the net
WIN_WAIT_FOREVER=ON # first we wait forever for a TESTDIR to appear, than
# we wait forever for the build to finish...
O_OPTIONS=ON # accept options (see above for listing)
WIN_SET_LOCALDIRS=ON # run QA in a local directory rather than accross
# the net
WIN_WAIT_FOREVER=ON # first we wait forever for a TESTDIR to appear, than
# we wait forever for the build to finish...
. `dirname $0`/header # utilities, shellfunctions etc, global to NSS QA
. `dirname $0`/header # utilities, shellfunctions etc, global to NSS QA
is_running ${TMP}/nssqa # checks if the file exists, if yes Exits, if not
# creates to implement a primitive locking mechanism
#if [ $O_CRON = "OFF" -a $O_WIN = "OFF" ] # if we are running from cron
# or on windows this has been done
is_running ${TMP}/nssqa # checks if the file exists, if yes Exits, if not
# creates to implement a primitive locking mechanism
#if [ $O_CRON = "OFF" -a $O_WIN = "OFF" ] # if we are running from cron
# or on windows this has been done
#then
#set_host # sets the HOST and DOMSUF variables - carefull,
#fi # hardcoded to redplanet
#set_host # sets the HOST and DOMSUF variables - carefull,
#fi # hardcoded to redplanet
KILL_SELFSERV=ON # cleanup will also kill the leftover selfserv processes
KILL_SELFSERV=ON # cleanup will also kill the leftover selfserv processes
#. `dirname $0`/nssqa.header #derived from init.sh
#. `dirname $0`/nssqa.header #derived from init.sh
TMP_ALL_SH_OUT=${TMP}/nssqa_all_sh_out.$$ #redirecting all.sh's output
TMP_ALL_SH_OUT=${TMP}/nssqa_all_sh_out.$$ #redirecting all.sh's output
TMPFILES="$TMPFILES $TMP_ALL_SH_OUT"
################################ check_distdir #########################
@ -57,65 +57,65 @@ TMPFILES="$TMPFILES $TMP_ALL_SH_OUT"
########################################################################
check_distdir()
{
set_objdir
set_objdir
if [ ! -d "$LOCALDIST_BIN" ]
then
Debug "Dist $DIST"
Warning "$LOCALDIST_BIN (the dist binaries dir) does not exist"
return 1
fi
if [ ! -d "$LOCALDIST_BIN" ]
then
Debug "Dist $DIST"
Warning "$LOCALDIST_BIN (the dist binaries dir) does not exist"
return 1
fi
if [ ! -d "$LOCALDIST" -a ! -h "$LOCALDIST" ]
then
Debug "Dist $DIST"
Warning "$LOCALDIST (the dist directory) does not exist"
return 1
fi
if [ ! -d "$LOCALDIST" -a ! -h "$LOCALDIST" ]
then
Debug "Dist $DIST"
Warning "$LOCALDIST (the dist directory) does not exist"
return 1
fi
Debug "LOCALDIST_BIN $LOCALDIST_BIN"
Debug "Dist $DIST"
return 0
Debug "LOCALDIST_BIN $LOCALDIST_BIN"
Debug "Dist $DIST"
return 0
}
################################ run_all ###############################
# local shell function to start the all.sh after asking user and redirect
# the output apropriately
########################################################################
run_all()
run_all()
{
check_distdir || return 1
kill_by_name selfserv
ask "Testing $OBJDIR continue with all.sh" "y" "n" || Exit
check_distdir || return 1
kill_by_name selfserv
ask "Testing $OBJDIR continue with all.sh" "y" "n" || Exit
Debug "running all.sh in `pwd`... please be patient :)"
if [ $O_SILENT = ON ]
then
if [ $O_DEBUG = ON -a $O_FILE = ON ]
then
all.sh >>$FILENAME 2>>$FILENAME
else
all.sh >/dev/null 2>/dev/null
fi
else
#if [ $O_FILE = ON ] #FIXME - write to tmp file and copy
#then
#all.sh 2>&1 | tee $TMP_ALL_SH_OUT
#if [ -r $TMP_ALL_SH_OUT ]
#then
#cat $TMP_ALL_SH_OUT >>$FILENAME
#fi
#else
all.sh
#fi
fi
Debug "Done with all.sh "
line
Debug "running all.sh in `pwd`... please be patient :)"
if [ $O_SILENT = ON ]
then
if [ $O_DEBUG = ON -a $O_FILE = ON ]
then
all.sh >>$FILENAME 2>>$FILENAME
else
all.sh >/dev/null 2>/dev/null
fi
else
#if [ $O_FILE = ON ] #FIXME - write to tmp file and copy
#then
#all.sh 2>&1 | tee $TMP_ALL_SH_OUT
#if [ -r $TMP_ALL_SH_OUT ]
#then
#cat $TMP_ALL_SH_OUT >>$FILENAME
#fi
#else
all.sh
#fi
fi
Debug "Done with all.sh "
line
}
all_sh()
{
echo
echo
}
@ -124,136 +124,139 @@ echo
########################################################################
nssqa_main()
{
# determine if all needed symbolic links are present, in case
# we build on one platform and QA on another
# determine if all needed symbolic links are present, in case
# we build on one platform and QA on another
if [ $O_WIN = "OFF" ]
then
if [ ! -h ${NTDIST}/WINNT5.0_DBG.OBJ -o \
! -h ${UXDIST}/SunOS5.8_OPT.OBJ -o \
! -h ${UXDIST}/OSF1V5.0_DBG.OBJ ]
then
# create the symbolic links
mksymlinks $* ||
glob_usage "Can't make the neccessary symbolic links"
fi
fi
if [ $O_WIN = "OFF" ]
then
if [ ! -h ${NTDIST}/WINNT5.0_DBG.OBJ -o \
! -h ${UXDIST}/SunOS5.8_OPT.OBJ -o \
! -h ${UXDIST}/OSF1V5.0_DBG.OBJ ]
then
# create the symbolic links
mksymlinks $* ||
glob_usage "Can't make the neccessary symbolic links"
fi
fi
if [ -d $TESTSCRIPTDIR ] #the directory mozilla/security/nss/tests,
then # where all.sh lives
cd $TESTSCRIPTDIR
else
Exit "cant cd to $TESTSCRIPTDIR Exiting"
fi
if [ -d $TESTSCRIPTDIR ] #the directory mozilla/security/nss/tests,
then # where all.sh lives
cd $TESTSCRIPTDIR
else
Exit "cant cd to $TESTSCRIPTDIR Exiting"
fi
Debug testing from `pwd`
line
Debug testing from `pwd`
line
Debug "HOST: $HOST, DOMSUF: $DOMSUF"
Debug "HOST: $HOST, DOMSUF: $DOMSUF"
# From the operatingsystem figure out the name of the build
case `uname -s` in
SunOS)
#first testing the 32 bit 2.6 build, even on 2.8
MAPPED_OS=Solaris2.6
;;
OSF1)
MAPPED_OS=OSF1V4.0
;;
AIX)
MAPPED_OS=AIX4.3
;;
Linux)
MAPPED_OS=Linux2.2
;;
HP-UX)
MAPPED_OS=HPUX11.00
;;
*)
if [ "$os_name" = "Windows" ]
then
MAPPED_OS=NT4.0
else
Exit "Sorry, operating system `uname -s` is not supported yet"
fi
;;
esac
OSDIR=${D1}/builds/${QAYEAR}${BUILDDATE}.${BUILDNUMBER}/*${MAPPED_OS}*
Debug Testing build for $MAPPED_OS in $OSDIR
if [ $O_WIN = "ON" ]
then
WaitForever ${OSDIR}/SVbuild.InProgress.1 0 #Wait for the build to finish...
OS_TARGET=WINNT;export OS_TARGET;Debug "OS_TARGET set to $OS_TARGET"
Echo "WINDOWS-OS-LINE: $os_name $os_full $OS_TARGET"
else
Wait ${OSDIR}/SVbuild.InProgress.1 0 #Wait for the build to finish...
fi
find_nt_masterbuild
Debug "Dist $DIST"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
IS_64=""
# now for the 64 bit build!
case `uname -s` in
#OSF1) has been done already - always 64 bit
SunOS)
MAPPED_OS=Solaris*8
IS_64=`(isainfo -v | grep 64)>/dev/null 2>/dev/null && echo 64 bit`
OSDIR=${D1}/builds/${QAYEAR}${BUILDDATE}.${BUILDNUMBER}/*${MAPPED_OS}
if [ -n "$IS_64" ]
then #Wait for the 64 bit build to finish...
Debug Testing build for $MAPPED_OS in $OSDIR
Wait ${OSDIR}/SVbuild.InProgress.1 0
fi
;;
AIX)
IS_64=`lslpp -l | grep "bos.64bit"> /dev/null && echo 64 bit`
;;
HP-UX)
IS_64=`getconf KERNEL_BITS | grep 64 >/dev/null && echo 64 bit`
;;
*)
if [ "$O_WIN" = "ON" ]
then
OS_TARGET=WIN95;export OS_TARGET;Debug "OS_TARGET set to $OS_TARGET"
Echo "WINDOWS-OS-LINE: $os_name $os_full $OS_TARGET"
unset BUILD_OPT;export BUILD_OPT;Debug "BUILD_OPT $BUILD_OPT"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
Debug "Copy results from $NT_MASTERDIR/mozilla/tests_results/security to $RESULTDIR"
cp -r $NT_MASTERDIR/mozilla/tests_results/security/* $RESULTDIR
fi
return
;;
esac
if [ -n "$IS_64" ]
then #Wait for the 64 bit build to finish...
Debug "This is a $IS_64 platform"
USE_64=1;export USE_64;Debug "Use_64 set to $USE_64"
unset BUILD_OPT;export BUILD_OPT;Debug "BUILD_OPT $BUILD_OPT"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
else
Debug "This is a 32 bit platform"
fi
# From the operatingsystem figure out the name of the build
case `uname -s` in
SunOS)
#first testing the 32 bit 2.6 build, even on 2.8
MAPPED_OS=Solaris2.6
;;
OSF1)
MAPPED_OS=OSF1V4.0
;;
AIX)
MAPPED_OS=AIX4.3
;;
Linux)
MAPPED_OS=Linux2.2
;;
HP-UX)
MAPPED_OS=HPUX11.00
;;
*)
if [ "$os_name" = "Windows" ]
then
MAPPED_OS=NT4.0
else
Exit "Sorry, operating system `uname -s` is not supported yet"
fi
;;
esac
OSDIR=${D1}/builds/${QAYEAR}${BUILDDATE}.${BUILDNUMBER}/*${MAPPED_OS}*
Debug Testing build for $MAPPED_OS in $OSDIR
if [ $O_WIN = "ON" ]
then
WaitForever ${OSDIR}/SVbuild.InProgress.1 0
#Wait for the build to finish Windows a lot longer
OS_TARGET=WINNT;export OS_TARGET;Debug "OS_TARGET set to $OS_TARGET"
Echo "WINDOWS-OS-LINE: $os_name $os_full $OS_TARGET"
else
Wait ${OSDIR}/SVbuild.InProgress.1 0
#Wait for the build to finish... Unix a few hours
fi
find_nt_masterbuild
Debug "Dist $DIST"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
IS_64=""
# now for the 64 bit build!
case `uname -s` in
#OSF1) has been done already - always 64 bit
SunOS)
MAPPED_OS=Solaris*8
IS_64=`(isainfo -v | grep 64)>/dev/null 2>/dev/null && echo 64 bit`
OSDIR=${D1}/builds/${QAYEAR}${BUILDDATE}.${BUILDNUMBER}/*${MAPPED_OS}
if [ -n "$IS_64" ]
then #Wait for the 64 bit build to finish...
Debug Testing build for $MAPPED_OS in $OSDIR
Wait ${OSDIR}/SVbuild.InProgress.1 0
fi
;;
AIX)
IS_64=`lslpp -l | grep "bos.64bit"> /dev/null && echo 64 bit`
;;
HP-UX)
IS_64=`getconf KERNEL_BITS | grep 64 >/dev/null && echo 64 bit`
;;
*)
if [ "$O_WIN" = "ON" ]
then
OS_TARGET=WIN95;export OS_TARGET
Debug "OS_TARGET set to $OS_TARGET"
Echo "WINDOWS-OS-LINE: $os_name $os_full $OS_TARGET"
unset BUILD_OPT;export BUILD_OPT;Debug "BUILD_OPT $BUILD_OPT"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
Debug "Copy results from $NT_MASTERDIR/mozilla/tests_results/security to $RESULTDIR"
cp -r $NT_MASTERDIR/mozilla/tests_results/security/* $RESULTDIR
fi
return
;;
esac
if [ -n "$IS_64" ]
then #Wait for the 64 bit build to finish...
Debug "This is a $IS_64 platform"
USE_64=1;export USE_64;Debug "Use_64 set to $USE_64"
unset BUILD_OPT;export BUILD_OPT;Debug "BUILD_OPT $BUILD_OPT"
run_all
BUILD_OPT=1; export BUILD_OPT; Debug "BUILD_OPT $BUILD_OPT"
run_all
else
Debug "This is a 32 bit platform"
fi
}
if [ $O_FILE = ON ]
then
nssqa_main 2>>$FILENAME
nssqa_main 2>>$FILENAME
else
nssqa_main
nssqa_main
fi
Exit "Done."

View File

@ -8,19 +8,19 @@
#
# parameters
# ----------
# nssversion (supported: 30b, 31, tip)
# builddate (default - today)
# nssversion (supported: 30b, 31, tip)
# builddate (default - today)
#
# options
# -------
# -y answer all questions with y - use at your own risk...ignores warnings
# -s silent (only usefull with -y)
# -h, -? - you guessed right - displays this text
# -d debug
# -f <filename> - write the (error)output to filename
# -m <mailinglist> - send filename to mailinglist (csl) only useful
# with -f
# -cron equivalient to -y -s -d -f $RESULTDIR/$HOST.qa_stat
# -y answer all questions with y - use at your own risk...ignores warnings
# -s silent (only usefull with -y)
# -h, -? - you guessed right - displays this text
# -d debug
# -f <filename> - write the (error)output to filename
# -m <mailinglist> - send filename to mailinglist (csl) only useful
# with -f
# -cron equivalient to -y -s -d -f $RESULTDIR/$HOST.qa_stat
#
########################################################################
@ -53,107 +53,107 @@ find_qa_systems()
for w in `ls $RESULTDIR | grep \.1$ | sed -e "s/\..*//" | sort -u`
do
NO_RSH="FALSE"
QA_OS=""
QA_RHVER=""
IS_64=""
IS_WIN=""
NO_RSH="FALSE"
QA_OS=""
QA_RHVER=""
IS_64=""
IS_WIN=""
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa && NO_RSH=TRUE
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa && NO_RSH=TRUE
if [ $NO_RSH = "TRUE" ]
then
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa | sed -e "s/ /_/g" \
-e "s/WINDOWS-OS-LINE:_Windows/${w}/g" >>$TMP_PLATFORMLIST_FILE
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa | sed -e "s/ /_/g" \
-e "s/WINDOWS-OS-LINE:_Windows/${w}/g"
else
QA_SYS=`rsh $w uname -sr`
echo $QA_SYS | grep Linux && QA_RHVER=`rsh $w cat /etc/redhat-release`
if [ -n "$QA_RHVER" ]
then
QA_OS=`echo $w $QA_RHVER | sed -e "s/Red Hat /RH /" \
-e "s/ release//"`
else
case $QA_SYS in
*SunOS*5.8*)
IS_64=`rsh $w isainfo -v | grep 64 >/dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
*HP*)
IS_64=`rsh $w getconf KERNEL_BITS | grep 64 >/dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
*AIX*)
IS_64=`rsh $w lslpp -l | grep "bos.64bit"> /dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
esac
QA_OS=`echo "$w $QA_SYS $IS_64"`
fi
echo $QA_OS
echo $QA_OS | sed -e "s/ /_/g" >>$TMP_PLATFORMLIST_FILE # use later for
# missing list
fi
if [ $NO_RSH = "TRUE" ]
then
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa | sed -e "s/ /_/g" \
-e "s/WINDOWS-OS-LINE:_Windows/${w}/g" >>$TMP_PLATFORMLIST_FILE
grep WINDOWS-OS-LINE ${RESULTDIR}/${w}.nssqa | sed -e "s/ /_/g" \
-e "s/WINDOWS-OS-LINE:_Windows/${w}/g"
else
QA_SYS=`rsh $w uname -sr`
echo $QA_SYS | grep Linux && QA_RHVER=`rsh $w cat /etc/redhat-release`
if [ -n "$QA_RHVER" ]
then
QA_OS=`echo $w $QA_RHVER | sed -e "s/Red Hat /RH /" \
-e "s/ release//"`
else
case $QA_SYS in
*SunOS*5.8*)
IS_64=`rsh $w isainfo -v | grep 64 >/dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
*HP*)
IS_64=`rsh $w getconf KERNEL_BITS | grep 64 >/dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
*AIX*)
IS_64=`rsh $w lslpp -l | grep "bos.64bit"> /dev/null && \
echo 64 bit`
if [ -z "$IS_64" ] ; then IS_64="32 bit"; fi;
;;
esac
QA_OS=`echo "$w $QA_SYS $IS_64"`
fi
echo $QA_OS
echo $QA_OS | sed -e "s/ /_/g" >>$TMP_PLATFORMLIST_FILE # use later for
# missing list
fi
done
}
################################### set_files ##########################
# local shell function, sets the name of the resultfile to:
# <filename> if option -f <filename>
# $RESULTDIR/result if write permission
# (mozilla/tests_results/security/result)
# $HOME/resultNSS${NSSVER}-${BUILDDATE} if no write permission in $RESULTDIR
# <filename> if option -f <filename>
# $RESULTDIR/result if write permission
# (mozilla/tests_results/security/result)
# $HOME/resultNSS${NSSVER}-${BUILDDATE} if no write permission in $RESULTDIR
########################################################################
set_files()
{
if [ $O_FILE = ON -a $O_CRON = OFF ] # if -f was specified write there
then
RFILE=$FILENAME
else
RFILE=${RESULTDIR}/result
#RFILE=${RESULTDIR}/result.$$
if [ ! -w $RESULTDIR ]
then
RFILE=$HOME/resultNSS${NSSVER}-${BUILDDATE}
Debug "Using alternate resultfile $RFILE"
elif [ $O_CRON = ON ]
then
find ${RESULTDIR} -exec chmod a+rw {} \; #FIXME - umask
#doesn't seem to work - this is a tmp workaround
fi
if [ ! -x $RESULTDIR -o ! -r $RESULTDIR -o ! -w $RESULTDIR ]
then
glob_usage "$RESULTDIR does not have the right permissions `ls -l $RESULTDIR`"
fi
if [ -d $RESULTDIR ]
then
cd $RESULTDIR
else
glob_usage "$RESULTDIR does not exist"
fi
fi
TMP_E_FILE=${RFILE}.E$$
TMP_P_FILE=${RFILE}.P$$
TMP_PLATFORMLIST_FILE=${RFILE}.platform.$$
rm $TMP_PLATFORMLIST_FILE 2>/dev/null
TMP_PERF_FILE=${RFILE}.perf.$$
HTML_FILE=${RFILE}.html
TMPFILES="$TMPFILES $TMP_E_FILE $TMP_P_FILE"
if [ $O_FILE = ON -a $O_CRON = OFF ] # if -f was specified write there
then
RFILE=$FILENAME
else
RFILE=${RESULTDIR}/result
#RFILE=${RESULTDIR}/result.$$
if [ ! -w $RESULTDIR ]
then
RFILE=$HOME/resultNSS${NSSVER}-${BUILDDATE}
Debug "Using alternate resultfile $RFILE"
elif [ $O_CRON = ON ]
then
find ${RESULTDIR} -exec chmod a+rw {} \; #FIXME - umask
#doesn't seem to work - this is a tmp workaround
fi
if [ ! -x $RESULTDIR -o ! -r $RESULTDIR -o ! -w $RESULTDIR ]
then
glob_usage "$RESULTDIR does not have the right permissions `ls -l $RESULTDIR`"
fi
if [ -d $RESULTDIR ]
then
cd $RESULTDIR
else
glob_usage "$RESULTDIR does not exist"
fi
fi
TMP_E_FILE=${RFILE}.E$$
TMP_P_FILE=${RFILE}.P$$
TMP_PLATFORMLIST_FILE=${RFILE}.platform.$$
rm $TMP_PLATFORMLIST_FILE 2>/dev/null
TMP_PERF_FILE=${RFILE}.perf.$$
HTML_FILE=${RFILE}.html
TMPFILES="$TMPFILES $TMP_E_FILE $TMP_P_FILE"
#FIXME rm the rest too - add them to the TMPFILES
FILENAME=$RFILE #we might want to mail it...later switch to html file
O_FILE="ON"
rm $HTML_FILE $RFILE $TMP_E_FILE $TMP_P_FILE 2>/dev/null
cp $DOCDIR/QAheader.html $HTML_FILE
FILENAME=$RFILE #we might want to mail it...later switch to html file
O_FILE="ON"
rm $HTML_FILE $RFILE $TMP_E_FILE $TMP_P_FILE 2>/dev/null
cp $DOCDIR/QAheader.html $HTML_FILE
}
################################# html_eot #########################
# local shell function, writes end of the html table
########################################################################
####################################################################
html_eot()
{
echo '</table>'
@ -161,7 +161,7 @@ echo '</table>'
################################# html_footer #########################
# local shell function, writes end of the html body
########################################################################
#######################################################################
html_footer()
{
@ -175,41 +175,41 @@ echo '</html>'
########################################################################
setQAsysvars()
{
if [ "$MACHINE" != "0" ]
then
TESTDATE=`ls -ld $MACHINE | awk '{ print $5, $6, $7 }'`
TESTNUMBER=`echo $MACHINE | sed -e 's/.*\.//'`
SYSNAME=`echo $MACHINE | sed -e 's/\..*//'`
Debug "SYSNAME= $SYSNAME"
QA_SYS_OS=`grep $SYSNAME $TMP_PLATFORMLIST_FILE |sed -e 's/ //' | \
sort | uniq | sed -e "s/$SYSNAME//" \
-e "s/WINNT_WIN95/Windows NT/" \
-e "s/WINNT_WINNT/Windows NT/" \
-e "s/Windows_NT_WIN95/Windows NT/" \
-e "s/Windows_NT_WINNT/Windows NT/" | sort | uniq`
Debug "QA_SYS_OS= $QA_SYS_OS"
fi
BUILD_SYS=`echo $BUILDPLATFORM | sed -e 's/\.OBJ//' -e 's/_DBG/ Debug/' \
-e 's/_OPT/ Optimized/' -e 's/_64/ 64bit/' -e 's/_glibc_PTH//' \
-e 's/_/ /'`
Debug "BUILD_SYS=$BUILD_SYS"
if [ -f "${RESULTDIR}/${MACHINE}/results.html" ]
then
RESULT="http://cindercone${RESULTDIR}/${MACHINE}/results.html"
Debug "RESULT=$RESULT"
else
if [ "$MACHINE" != "0" ]
then
TESTDATE=`ls -ld $MACHINE | awk '{ print $5, $6, $7 }'`
TESTNUMBER=`echo $MACHINE | sed -e 's/.*\.//'`
SYSNAME=`echo $MACHINE | sed -e 's/\..*//'`
Debug "SYSNAME= $SYSNAME"
QA_SYS_OS=`grep $SYSNAME $TMP_PLATFORMLIST_FILE |sed -e 's/ //' | \
sort | uniq | sed -e "s/$SYSNAME//" \
-e "s/WINNT_WIN95/Windows NT/" \
-e "s/WINNT_WINNT/Windows NT/" \
-e "s/Windows_NT_WIN95/Windows NT/" \
-e "s/Windows_NT_WINNT/Windows NT/" | sort | uniq`
Debug "QA_SYS_OS= $QA_SYS_OS"
fi
BUILD_SYS=`echo $BUILDPLATFORM | sed -e 's/\.OBJ//' -e 's/_DBG/ Debug/' \
-e 's/_OPT/ Optimized/' -e 's/_64/ 64bit/' -e 's/_glibc_PTH//' \
-e 's/_/ /'`
Debug "BUILD_SYS=$BUILD_SYS"
if [ -f "${RESULTDIR}/${MACHINE}/results.html" ]
then
RESULT="http://cindercone${RESULTDIR}/${MACHINE}/results.html"
Debug "RESULT=$RESULT"
else
RESULT="0"
Debug "no resultfile"
fi
fi
if [ -f "${RESULTDIR}/${MACHINE}/output.log" ]
then
LOG="http://cindercone${RESULTDIR}/${MACHINE}/output.log"
Debug "LOG=$LOG"
else
LOG="0"
Debug "no logfile"
fi
if [ -f "${RESULTDIR}/${MACHINE}/output.log" ]
then
LOG="http://cindercone${RESULTDIR}/${MACHINE}/output.log"
Debug "LOG=$LOG"
else
LOG="0"
Debug "no logfile"
fi
}
HTML_ERRORCOLOR=\"#FF0000\"
@ -225,47 +225,46 @@ HTML_PASSEDMSG=Passed
########################################################################
html_line()
{
echo '<tr NOSAVE>'
echo '<td NOSAVE>'$BUILD_SYS'</td>'
echo ''
echo '<td NOSAVE>'$QA_SYS_OS'</td>'
echo ''
echo '<td>'$SYSNAME'</td>'
#echo '<td>'$SYSNAME $TESTNUMBER $TESTDATE'</td>'
echo ''
if [ "$1" = "failed" ]
then
echo '<td BGCOLOR='$HTML_ERRORCOLOR' NOSAVE><b>'$HTML_ERRORMSG'</b></td>'
elif [ "$1" = "passed" ]
then
echo '<td BGCOLOR='$HTML_PASSEDCOLOR' NOSAVE>'$HTML_PASSEDMSG'</td>'
else
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
fi
if [ "$RESULT" = "0" ]
then
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
else
echo '<td>&nbsp;<a href="'$RESULT'">result</a>&nbsp;</td>'
fi
echo ''
if [ "$LOG" = "0" ]
then
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
else
echo '<td>&nbsp;<a href="'$LOG'">log</a>&nbsp;</td>'
fi
echo ''
if [ "$1" = "failed" ]
then
echo '<td>&nbsp;<a href="#errorlist">error</a>&nbsp;</td>'
else
echo '<td></td>'
fi
echo '<td>'$TESTDATE $TESTNUMBER'</td>'
echo '</tr>'
echo '<tr NOSAVE>'
echo '<td NOSAVE>'$BUILD_SYS'</td>'
echo ''
echo '<td NOSAVE>'$QA_SYS_OS'</td>'
echo ''
echo '<td>'$SYSNAME'</td>'
#echo '<td>'$SYSNAME $TESTNUMBER $TESTDATE'</td>'
echo ''
if [ "$1" = "failed" ]
then
echo '<td BGCOLOR='$HTML_ERRORCOLOR' NOSAVE><b>'$HTML_ERRORMSG'</b></td>'
elif [ "$1" = "passed" ]
then
echo '<td BGCOLOR='$HTML_PASSEDCOLOR' NOSAVE>'$HTML_PASSEDMSG'</td>'
else
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
fi
if [ "$RESULT" = "0" ]
then
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
else
echo '<td>&nbsp;<a href="'$RESULT'">result</a>&nbsp;</td>'
fi
echo ''
if [ "$LOG" = "0" ]
then
echo '<td BGCOLOR='$HTML_MISSINGCOLOR' NOSAVE>'$HTML_MISSINGMSG'</td>'
else
echo '<td>&nbsp;<a href="'$LOG'">log</a>&nbsp;</td>'
fi
echo ''
if [ "$1" = "failed" ]
then
echo '<td>&nbsp;<a href="#errorlist">error</a>&nbsp;</td>'
else
echo '<td></td>'
fi
echo '<td>'$TESTDATE $TESTNUMBER'</td>'
echo '</tr>'
}
################################# qa_errorlist #########################
@ -273,65 +272,65 @@ echo '</tr>'
########################################################################
qa_errorlist()
{
if [ "$1" = "1" ]
then
echo " R e s u l t E r r o r l i s t"
lline
fi
if [ "$1" = "1" ]
then
echo " R e s u l t E r r o r l i s t"
lline
fi
#FIXME it should also examine the files for passed messages, since
#sometimes empty results and output.log files are generated
grep red */results.html |
sed -e 's/.results.html:<TR><TD>/ /' -e 's/<[^>]*>/ /g'
if [ "$1" = "1" ]
then
lline
echo " O u t p u t E r r o r / W a r n i n g l i s t"
lline
fi
#FIXME it should also examine the files for passed messages, since
#sometimes empty results and output.log files are generated
grep red */results.html |
sed -e 's/.results.html:<TR><TD>/ /' -e 's/<[^>]*>/ /g'
if [ "$1" = "1" ]
then
lline
echo " O u t p u t E r r o r / W a r n i n g l i s t"
lline
fi
grep 'cache hits; .* cache misses, .* cache not reusable' */output.log |
grep -v selfserv |
grep -v '0 cache hits; 1 cache misses, 0 cache not reusable' |
grep -v '0 cache hits; 0 cache misses, 0 cache not reusable' |
grep -v ' cache hits; 1 cache misses, 0 cache not reusable'
#grep -v '999 cache hits; 1 cache misses, 0 cache not reusable'
if [ "$1" = "1" ]
then
lline
echo " C o r e l i s t "
lline
fi
find . -name core -print 2>/dev/null
grep 'cache hits; .* cache misses, .* cache not reusable' */output.log |
grep -v selfserv |
grep -v '0 cache hits; 1 cache misses, 0 cache not reusable' |
grep -v '0 cache hits; 0 cache misses, 0 cache not reusable' |
grep -v ' cache hits; 1 cache misses, 0 cache not reusable'
#grep -v '999 cache hits; 1 cache misses, 0 cache not reusable'
if [ "$1" = "1" ]
then
lline
echo " C o r e l i s t "
lline
fi
find . -name core -print 2>/dev/null
}
platformlist()
{
lline
echo " P l a t f o r m l i s t "
grep Platform */results.html |
sed -e 's/.results.html:<H4>Platform:/ /' \
-e 's/<BR>//' |
while read MACHINE BUILDPLATFORM
do
grep $MACHINE $1 >/dev/null
ret=$?
setQAsysvars
if [ $ret -eq 0 ]
then
echo "Failed $MACHINE $BUILDPLATFORM"
html_line failed >>$HTML_FILE
#echo "1 $MACHINE $BUILDPLATFORM Failed 2"
else
echo "Passed $MACHINE $BUILDPLATFORM"
html_line passed >>$HTML_FILE
#echo "1 $MACHINE $BUILDPLATFORM passed 2"
fi
done
lline
echo " P l a t f o r m l i s t "
grep Platform */results.html |
sed -e 's/.results.html:<H4>Platform:/ /' \
-e 's/<BR>//' |
while read MACHINE BUILDPLATFORM
do
grep $MACHINE $1 >/dev/null
ret=$?
setQAsysvars
if [ $ret -eq 0 ]
then
echo "Failed $MACHINE $BUILDPLATFORM"
html_line failed >>$HTML_FILE
#echo "1 $MACHINE $BUILDPLATFORM Failed 2"
else
echo "Passed $MACHINE $BUILDPLATFORM"
html_line passed >>$HTML_FILE
#echo "1 $MACHINE $BUILDPLATFORM passed 2"
fi
done
}
@ -340,89 +339,89 @@ platformlist()
########################################################################
check_platforms()
{
#lline
#echo " M i s s i n g P l a t f o r m s"
#lline
QA_MISSING="QA report missing"
MACHINE="0"
#lline
#echo " M i s s i n g P l a t f o r m s"
#lline
QA_MISSING="QA report missing"
MACHINE="0"
for BUILDPLATFORM in `cat $TESTSCRIPTDIR/platformlist`
do
grep $BUILDPLATFORM $TMP_PLATFORMLIST_FILE > /dev/null || {
echo "$BUILDPLATFORM not tested: $QA_MISSING" >>$TMP_P_FILE
setQAsysvars
html_line missing >>$HTML_FILE
for BUILDPLATFORM in `cat $TESTSCRIPTDIR/platformlist`
do
grep $BUILDPLATFORM $TMP_PLATFORMLIST_FILE > /dev/null || {
echo "$BUILDPLATFORM not tested: $QA_MISSING" >>$TMP_P_FILE
setQAsysvars
html_line missing >>$HTML_FILE
}
done
}
done
}
lline()
{
echo
echo "------------------------------------------------------------------"
echo
echo
echo "------------------------------------------------------------------"
echo
}
header()
{
lline
echo "QA results for NSS $NSSVER builddate $QAYEAR $BUILDDATE "
echo "today's date `date`"
lline
echo "testing in $RESULTDIR"
lline
echo "QA results for NSS $NSSVER builddate $QAYEAR $BUILDDATE "
echo "today's date `date`"
lline
echo "testing in $RESULTDIR"
}
rsaperf()
{
grep RSAPERF */output.log | grep -v "_DBG" > $TMP_PERF_FILE
grep RSAPERF */output.log | grep -v "_DBG" > $TMP_PERF_FILE
echo '&nbsp;'
echo '<br>&nbsp;'
echo '<center>'
echo '<h1>'
echo '<a NAME="Performance list"></a>Performance list</h1></center>'
echo '&nbsp;'
echo '<table BORDER WIDTH="100%" NOSAVE >'
echo '<tr NOSAVE>'
echo '<td NOSAVE><b><font size=+1>Build-OS and version</font></b></td>'
echo ''
echo '<td><b><font size=+1>Systemname</font></b></td>'
echo ''
echo '<td><b><font size=+1># of iterations</font></b></td>'
echo ''
echo '<td><b><font size=+1>average for one op</font></b></td>'
echo ''
echo '<td><b><font size=+1>Total</font></b></td>'
echo ''
echo '<td><b><font size=+1>QA time / #</font></b></td>'
echo '</tr>'
cat $TMP_PERF_FILE | while read MACHINE BUILDPLATFORM no_iter t1 t2 total total_unit t3 t4 t5 average average_unit
do
BUILD_SYS=`echo $BUILDPLATFORM | sed -e 's/\.OBJ//' \
-e 's/_DBG/ Debug/' \
-e 's/_OPT/ Optimized/' -e 's/_64/ 64bit/' -e 's/_glibc_PTH//' \
-e 's/_/ /'`
TESTNUMBER=`echo $MACHINE | sed -e 's/[^\.]*\.//' -e 's/\/.*//'`
MACHINE=`echo $MACHINE | sed -e 's/\..*//'`
TESTDATE=`ls -ld ${MACHINE}.${TESTNUMBER} | awk '{ print $5, $6, $7 }'`
echo '<tr>'
echo '<td>'$BUILD_SYS'</td>'
echo ''
echo '<td>'$MACHINE'</td>'
echo ''
echo '<td>'$no_iter'</td>'
echo ''
echo '<td>'$average' '$average_unit'</td>'
echo ''
echo '<td>'$total' '$total_unit'</td>'
echo ''
echo '<td>'$TESTDATE $TESTNUMBER'</td>'
echo ''
echo '</tr>'
done
echo '</table>'
echo '<br>&nbsp;'
echo '<center>'
echo '<h1>'
echo '<a NAME="Performance list"></a>Performance list</h1></center>'
echo '&nbsp;'
echo '<table BORDER WIDTH="100%" NOSAVE >'
echo '<tr NOSAVE>'
echo '<td NOSAVE><b><font size=+1>Build-OS and version</font></b></td>'
echo ''
echo '<td><b><font size=+1>Systemname</font></b></td>'
echo ''
echo '<td><b><font size=+1># of iterations</font></b></td>'
echo ''
echo '<td><b><font size=+1>average for one op</font></b></td>'
echo ''
echo '<td><b><font size=+1>Total</font></b></td>'
echo ''
echo '<td><b><font size=+1>QA time / #</font></b></td>'
echo '</tr>'
cat $TMP_PERF_FILE | while read MACHINE BUILDPLATFORM no_iter t1 t2 total total_unit t3 t4 t5 average average_unit
do
BUILD_SYS=`echo $BUILDPLATFORM | sed -e 's/\.OBJ//' \
-e 's/_DBG/ Debug/' \
-e 's/_OPT/ Optimized/' -e 's/_64/ 64bit/' -e 's/_glibc_PTH//' \
-e 's/_/ /'`
TESTNUMBER=`echo $MACHINE | sed -e 's/[^\.]*\.//' -e 's/\/.*//'`
MACHINE=`echo $MACHINE | sed -e 's/\..*//'`
TESTDATE=`ls -ld ${MACHINE}.${TESTNUMBER} | awk '{ print $5, $6, $7 }'`
echo '<tr>'
echo '<td>'$BUILD_SYS'</td>'
echo ''
echo '<td>'$MACHINE'</td>'
echo ''
echo '<td>'$no_iter'</td>'
echo ''
echo '<td>'$average' '$average_unit'</td>'
echo ''
echo '<td>'$total' '$total_unit'</td>'
echo ''
echo '<td>'$TESTDATE $TESTNUMBER'</td>'
echo ''
echo '</tr>'
done
echo '</table>'
}
set_files
@ -455,5 +454,5 @@ qa_errorlist 2 | sed -e "s/^/<br>/" >>$HTML_FILE
html_footer >>$HTML_FILE
EARLY_EXIT=FALSE
FILENAME=$HTML_FILE #we might want to mail it...
FILENAME=$HTML_FILE #we might want to mail it...
Exit