cleanup some qa stuff

Get rid of checking log for recovery msgs. It's too much
hassle and probably not worth it.
This commit is contained in:
fsgqa
2004-04-23 04:08:39 +00:00
parent af33817e78
commit e23849bf53
5 changed files with 52 additions and 70 deletions
+1 -23
View File
@@ -47,7 +47,7 @@ echo "QA output created by $seq"
here=`pwd` here=`pwd`
tmp=/tmp/$$ tmp=/tmp/$$
status=1 # failure is the default! status=1 # failure is the default!
trap "_cleanup; exit \$status" 0 1 2 3 15 trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
# get standard environment, filters and checks # get standard environment, filters and checks
. ./common.rc . ./common.rc
@@ -66,19 +66,9 @@ _do_logprint()
fi fi
} }
_cleanup()
{
rm -f $tmp.*
kill $pid
}
rm -f $seq.full rm -f $seq.full
rm -f $tmp.log rm -f $tmp.log
tail -f /var/log/messages >$tmp.log &
pid=$!
cp $tmp.log $tmp.log.orig # note the original log
_require_scratch _require_scratch
echo "mkfs" echo "mkfs"
@@ -112,18 +102,6 @@ echo "mount with replay"
_scratch_mount $mnt >>$seq.full 2>&1 \ _scratch_mount $mnt >>$seq.full 2>&1 \
|| _fail "mount failed: $mnt $MOUNT_OPTIONS" || _fail "mount failed: $mnt $MOUNT_OPTIONS"
sleep 2
# compare with what has now been added to the log
comm -13 $tmp.log.orig $tmp.log >$tmp.comm
echo "$tmp.comm" >>$seq.full
cat $tmp.comm >>$seq.full
echo "check syslog for recovery..."
grep recovery $tmp.comm |\
sed -e 's/.*Start/Start/' -e 's/system:.*/system/' \
-e 's/.*End/End/'
echo "ls SCRATCH_MNT" echo "ls SCRATCH_MNT"
ls $SCRATCH_MNT ls $SCRATCH_MNT
-3
View File
@@ -7,9 +7,6 @@ unmount
logprint after going down... logprint after going down...
dirty log dirty log
mount with replay mount with replay
check syslog for recovery...
Starting XFS recovery on filesystem
Ending XFS recovery on filesystem
ls SCRATCH_MNT ls SCRATCH_MNT
00 00
01 01
+2 -1
View File
@@ -223,7 +223,8 @@ do
start=`_wallclock` start=`_wallclock`
$timestamp && echo -n " ["`date "+%T"`"]" $timestamp && echo -n " ["`date "+%T"`"]"
sh $seq >$tmp.rawout 2>&1 [ ! -x $seq ] && chmod u+x $seq # ensure we can run it
./$seq >$tmp.rawout 2>&1
sts=$? sts=$?
$timestamp && echo -n " ["`date "+%T"`"]" $timestamp && echo -n " ["`date "+%T"`"]"
stop=`_wallclock` stop=`_wallclock`
-3
View File
@@ -10,9 +10,6 @@ ______________________ ______________
- make a kernel workarea "$HOME/qa/2.4.x-xfs" for 2.4.x-xfs - make a kernel workarea "$HOME/qa/2.4.x-xfs" for 2.4.x-xfs
and a commands workarea "$HOME/qa/xfs-cmds" for xfs-cmds and a commands workarea "$HOME/qa/xfs-cmds" for xfs-cmds
(easiest to copy them from elsewhere) (easiest to copy them from elsewhere)
- cd $HOME/qa ; ln -s xfs-cmds/xfstests/tools/auto-qa .
(auto-qa must be a link into it's own source tree
so it can update itself)
- copy an appropriate .config file to - copy an appropriate .config file to
$HOME/qa/$HOSTNAME.config $HOME/qa/$HOSTNAME.config
- You'll need a hacked version of 'su' in $HOME/qa that - You'll need a hacked version of 'su' in $HOME/qa that
+49 -40
View File
@@ -32,8 +32,11 @@
# #
# automatic qa system. 31/08/00 dxm@sgi.com # automatic qa system. 31/08/00 dxm@sgi.com
#
# configuration (you could tune this) # Usage: auto_qa start-state [stop-state]
# Do auto_qa from start-state up to stop-state inclusive
# or if no stop-state given then do it until reach "done" state.
#
_log() _log()
{ {
@@ -98,7 +101,7 @@ STATE=$ROOT/qa.state
QADIR="$WORKAREA/xfstests" QADIR="$WORKAREA/xfstests"
SUDO="su -c" SUDO="su -c"
CONFIG="$ROOT/$HOST.config" CONFIG="$ROOT/$HOST.config"
COMMON_CONFIG="$WORKAREA/xfstests/common.config" COMMON_CONFIG="$QADIR/common.config"
SH="/bin/sh" SH="/bin/sh"
LOG="$ROOT/qa.log" LOG="$ROOT/qa.log"
@@ -139,6 +142,8 @@ _set_state()
_change_state() _change_state()
{ {
new=$1 new=$1
# if have state XXXX-state then preserve XXXX-newstate
case $state case $state
in in
@@ -169,18 +174,6 @@ _restart()
exec $ROOT/su -c "(shutdown -r now \"auto-qa rebooting\" )&" < /dev/null exec $ROOT/su -c "(shutdown -r now \"auto-qa rebooting\" )&" < /dev/null
} }
_update_autoqa_file()
{
SELF="$ROOT/auto-qa"
SELF_UPDATE="xfstests/tools/auto-qa"
if [ -z "$CVSROOT" ]; then
cmd="p_tupdate $SELF_UPDATE"
else
cmd="cvs -z3 update $SELF_UPDATE"
fi
exec $SH -c "cd $WORKAREA ; $cmd; chmod +x $SELF_UPDATE ; exec $SELF"
}
_update_workarea() _update_workarea()
{ {
if [ -z "$CVSROOT" ]; then if [ -z "$CVSROOT" ]; then
@@ -237,6 +230,7 @@ _i386_install()
|| _fail " !!! install modules failed" || _fail " !!! install modules failed"
fi fi
if [ -z "$KINSTALL" -o "$KINSTALL" = lilo ]; then if [ -z "$KINSTALL" -o "$KINSTALL" = lilo ]; then
_log " *** reinit lilo" _log " *** reinit lilo"
_sudo /sbin/lilo 2>&1 \ _sudo /sbin/lilo 2>&1 \
@@ -262,6 +256,12 @@ _ia64_restart()
echo not yet implemented echo not yet implemented
} }
_check_kernel()
{
[ -d "$KWORKAREA" ] || _fail " !!! QA kernel workarea \"$KWORKAREA\" not found"
[ -r "$CONFIG" ] || _fail " !!! Can't read config file $CONFIG"
}
_log "*** XFS QA (`date`)" _log "*** XFS QA (`date`)"
@@ -290,15 +290,13 @@ in
;; ;;
esac esac
if [ "$1" != "" ] [ -n "$1" ] && _set_state $1
then [ -n "$2" ] && stop_state=$2
_set_state $1
fi
[ "$UID" -eq 0 ] && _fail " !!! QA most be run as a normal user" [ "$UID" -eq 0 ] && _fail " !!! QA most be run as a normal user"
[ -d "$ROOT" ] || _fail " !!! QA root \"$ROOT\" not found" [ -d "$ROOT" ] || _fail " !!! QA root \"$ROOT\" not found"
[ -d "$WORKAREA" ] || _fail " !!! QA workarea \"$WORKAREA\" not found" [ -d "$WORKAREA" ] || _fail " !!! QA workarea \"$WORKAREA\" not found"
[ -r "$CONFIG" ] || _fail " !!! Can't read config file $CONFIG" cd $QADIR
. "$COMMON_CONFIG" || _fail " !!! Couldn't source $COMMON_CONFIG" . "$COMMON_CONFIG" || _fail " !!! Couldn't source $COMMON_CONFIG"
_get_kernel_version _get_kernel_version
@@ -327,21 +325,10 @@ do
_log "******************************************************" _log "******************************************************"
_log "QA init $VERSION (`date`)" _log "QA init $VERSION (`date`)"
_log "******************************************************" _log "******************************************************"
_log "--- kernel ($IMAGE)" new_state="updatetools"
[ -z "$KMODULES" -o "$KMODULES" = yes ] && \
_log "--- modules ($MODULES)"
_change_state "inited"
_update_autoqa_file
;;
*inited)
_log " *** QA initialized"
new_state="update"
;; ;;
*update) *updatetools)
_update_workarea "$KWORKAREA"
_update_workarea "$WORKAREA" _update_workarea "$WORKAREA"
new_state="cleantools" new_state="cleantools"
;; ;;
@@ -381,10 +368,17 @@ do
|| _fail " !!! install $pkg failed" || _fail " !!! install $pkg failed"
done done
new_state="updatekernel"
;;
*updatekernel)
_check_kernel
_update_workarea "$KWORKAREA"
new_state="cleankernel" new_state="cleankernel"
;; ;;
*cleankernel) *cleankernel)
_check_kernel
_log " *** clean kernel" _log " *** clean kernel"
cd "$KWORKAREA" cd "$KWORKAREA"
make mrproper 2>&1 \ make mrproper 2>&1 \
@@ -402,7 +396,7 @@ do
;; ;;
*reconfig) *reconfig)
_check_kernel
_log " *** reconfig kernel" _log " *** reconfig kernel"
# we better start from scratch if this fails # we better start from scratch if this fails
@@ -420,7 +414,11 @@ do
;; ;;
*buildkernel) *buildkernel)
_check_kernel
_log " *** build kernel" _log " *** build kernel"
_log " --- kernel ($IMAGE)"
[ -z "$KMODULES" -o "$KMODULES" = yes ] && \
_log " --- modules ($MODULES)"
_change_state "cleankernel" ; # we better start from scratch if this fails _change_state "cleankernel" ; # we better start from scratch if this fails
@@ -434,6 +432,7 @@ do
;; ;;
*install) *install)
_check_kernel
_log " *** blat old modules" _log " *** blat old modules"
_sudo rm -rf $MODULES _sudo rm -rf $MODULES
@@ -445,11 +444,7 @@ do
ia64) _ia64_install ;; ia64) _ia64_install ;;
esac esac
if [ -z "$KRESTART" -o "$KRESTART" = yes ]; then new_state="restart"
new_state="restart"
else
new_state="done"
fi
;; ;;
*restart) *restart)
@@ -565,7 +560,7 @@ do
;; ;;
*done) *done)
_log "*** QA run complete" _log "*** requested QA state transitions complete"
_success _success
;; ;;
@@ -582,6 +577,20 @@ do
_log " *** state $state done (`date`)" _log " *** state $state done (`date`)"
[ "$new_state" = "" ] && _fail " !!! no new state set" [ "$new_state" = "" ] && _fail " !!! no new state set"
if [ -n "$stop_state" ]
then
# remove hyphen prefixes
s1=`echo $state | sed 's/.*-//'`
s2=`echo $stop_state | sed 's/.*-//'`
if [ $s1 = $s2 ]
then
# we have been requested to stop here and not go on
new_state="done"
fi
fi
_change_state $new_state _change_state $new_state
done done