hwsim tests: Move logging into timestamped subdirectory
Instead of logging many files called "<timestamp>-*", log into a new "<timestamp>/*" in the logs/ subdirectory and only put the last-debug file into logs/. If a LOGDIR is specified in the environment, instead just put everything into that directory (so the caller should make sure to give it a timestamp or so) and skip the creation of last-debug entirely. Also clean up a bit and pass the LOGDIR from run-all.sh to start.sh rather than having start.sh create the timestamp and run-all.sh detect the latest one when having run start.sh. Signed-hostap: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
435e37df7c
commit
958bf1ba39
2 changed files with 32 additions and 22 deletions
|
@ -3,9 +3,14 @@
|
||||||
errors=0
|
errors=0
|
||||||
umask 0002
|
umask 0002
|
||||||
|
|
||||||
|
DATE="$(date +%s)"
|
||||||
|
unset LOGBASEDIR
|
||||||
if [ -z "$LOGDIR" ]; then
|
if [ -z "$LOGDIR" ]; then
|
||||||
LOGDIR=logs
|
LOGBASEDIR=logs
|
||||||
|
LOGDIR=$LOGBASEDIR/$DATE
|
||||||
|
mkdir -p $LOGDIR
|
||||||
fi
|
fi
|
||||||
|
export LOGDIR
|
||||||
|
|
||||||
if [ -z "$DBFILE" ]; then
|
if [ -z "$DBFILE" ]; then
|
||||||
DB=""
|
DB=""
|
||||||
|
@ -52,25 +57,32 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! ./start.sh $CONCURRENT $VALGRIND $TRACE; then
|
if ! ./start.sh $CONCURRENT $VALGRIND $TRACE; then
|
||||||
echo "Could not start test environment" > $LOGDIR/last-debug
|
if ! [ -z "$LOGBASEDIR" ] ; then
|
||||||
|
echo "Could not start test environment" > $LOGDIR/run
|
||||||
|
fi
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
DATE=`ls -1tr $LOGDIR | tail -1 | cut -f1 -d-`
|
|
||||||
rm $LOGDIR/last-debug 2>/dev/null
|
|
||||||
./run-tests.py $TRACE_ARGS -l $LOGDIR/$DATE-run $DB -e $LOGDIR/$DATE-failed -r $LOGDIR/results.txt $CONCURRENT_TESTS $@ || errors=1
|
|
||||||
|
|
||||||
cat $LOGDIR/$DATE-run >> $LOGDIR/last-debug
|
if ! [ -z "$LOGBASEDIR" ] ; then
|
||||||
|
rm $LOGBASEDIR/last-debug 2>/dev/null
|
||||||
|
fi
|
||||||
|
./run-tests.py $TRACE_ARGS -l $LOGDIR/run $DB -e $LOGDIR/failed -r $LOGDIR/results.txt $CONCURRENT_TESTS $@ || errors=1
|
||||||
|
|
||||||
|
if ! [ -z "$LOGBASEDIR" ] ; then
|
||||||
|
cat $LOGDIR/run >> $LOGBASEDIR/last-debug
|
||||||
|
fi
|
||||||
|
|
||||||
./stop-wifi.sh
|
./stop-wifi.sh
|
||||||
|
|
||||||
if [ ! -z "$VALGRIND" ] ; then
|
if [ ! -z "$VALGRIND" ] ; then
|
||||||
failures=`grep "ERROR SUMMARY" $LOGDIR/$DATE-valgrind-* | grep -v " 0 errors" | wc -l`
|
failures=`grep "ERROR SUMMARY" $LOGDIR/valgrind-* | grep -v " 0 errors" | wc -l`
|
||||||
if [ $failures -gt 0 ]; then
|
if [ $failures -gt 0 ]; then
|
||||||
echo "Mark as failed due to valgrind errors"
|
echo "Mark as failed due to valgrind errors"
|
||||||
errors=1
|
errors=1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ $errors -gt 0 ]; then
|
if [ $errors -gt 0 ]; then
|
||||||
tar czf /tmp/hwsim-tests-$DATE-FAILED$SUFFIX.tar.gz $LOGDIR/$DATE*
|
tar czf /tmp/hwsim-tests-$DATE-FAILED$SUFFIX.tar.gz $LOGDIR/
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
@ -7,12 +7,10 @@ HAPD=$DIR/../../hostapd/hostapd
|
||||||
WLANTEST=$DIR/../../wlantest/wlantest
|
WLANTEST=$DIR/../../wlantest/wlantest
|
||||||
HLR_AUC_GW=$DIR/../../hostapd/hlr_auc_gw
|
HLR_AUC_GW=$DIR/../../hostapd/hlr_auc_gw
|
||||||
|
|
||||||
DATE=`date +%s`
|
|
||||||
|
|
||||||
if [ -z "$LOGDIR" ] ; then
|
if [ -z "$LOGDIR" ] ; then
|
||||||
LOGDIR=$DIR/logs
|
LOGDIR="$DIR/logs/$(date +%s)"
|
||||||
|
mkdir -p $LOGDIR
|
||||||
fi
|
fi
|
||||||
export LOGDIR
|
|
||||||
|
|
||||||
if groups | tr ' ' "\n" | grep -q ^admin$; then
|
if groups | tr ' ' "\n" | grep -q ^admin$; then
|
||||||
GROUP=admin
|
GROUP=admin
|
||||||
|
@ -31,8 +29,8 @@ fi
|
||||||
|
|
||||||
if [ "$1" = "valgrind" ]; then
|
if [ "$1" = "valgrind" ]; then
|
||||||
VALGRIND=y
|
VALGRIND=y
|
||||||
VALGRIND_WPAS="valgrind --log-file=$LOGDIR/$DATE-valgrind-wlan%d"
|
VALGRIND_WPAS="valgrind --log-file=$LOGDIR/valgrind-wlan%d"
|
||||||
VALGRIND_HAPD="valgrind --log-file=$LOGDIR/$DATE-valgrind-hostapd"
|
VALGRIND_HAPD="valgrind --log-file=$LOGDIR/valgrind-hostapd"
|
||||||
chmod -f a+rx $WPAS
|
chmod -f a+rx $WPAS
|
||||||
chmod -f a+rx $HAPD
|
chmod -f a+rx $HAPD
|
||||||
shift
|
shift
|
||||||
|
@ -58,25 +56,25 @@ if [ "$CONCURRENT" = "y" ]; then
|
||||||
fi
|
fi
|
||||||
mkdir -p $LOGDIR
|
mkdir -p $LOGDIR
|
||||||
sudo ifconfig hwsim0 up
|
sudo ifconfig hwsim0 up
|
||||||
sudo $WLANTEST -i hwsim0 -c -d > $LOGDIR/$DATE-hwsim0 &
|
sudo $WLANTEST -i hwsim0 -c -d > $LOGDIR/hwsim0 &
|
||||||
sudo tcpdump -ni hwsim0 -s 2500 -w $LOGDIR/$DATE-hwsim0.dump > $LOGDIR/$DATE-tcpdump 2>&1 &
|
sudo tcpdump -ni hwsim0 -s 2500 -w $LOGDIR/hwsim0.dump > $LOGDIR/tcpdump 2>&1 &
|
||||||
for i in 0 1 2; do
|
for i in 0 1 2; do
|
||||||
sudo $(printf -- "$VALGRIND_WPAS" $i) $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf \
|
sudo $(printf -- "$VALGRIND_WPAS" $i) $WPAS -g /tmp/wpas-wlan$i -G$GROUP -Dnl80211 -iwlan$i -c $DIR/p2p$i.conf \
|
||||||
$(printf -- "$CONCURRENT_ARGS" $i) -ddKt$TRACE > $LOGDIR/$DATE-log$i &
|
$(printf -- "$CONCURRENT_ARGS" $i) -ddKt$TRACE > $LOGDIR/log$i &
|
||||||
done
|
done
|
||||||
sudo $VALGRIND_HAPD $HAPD -ddKt$TRACE -g /var/run/hostapd-global -G $GROUP -ddKt > $LOGDIR/$DATE-hostapd &
|
sudo $VALGRIND_HAPD $HAPD -ddKt$TRACE -g /var/run/hostapd-global -G $GROUP -ddKt > $LOGDIR/hostapd &
|
||||||
|
|
||||||
sleep 1
|
sleep 1
|
||||||
sudo chown $USER $LOGDIR/$DATE-hwsim0.dump
|
sudo chown $USER $LOGDIR/hwsim0.dump
|
||||||
if [ "x$VALGRIND" = "xy" ]; then
|
if [ "x$VALGRIND" = "xy" ]; then
|
||||||
sudo chown $USER $LOGDIR/$DATE-*valgrind*
|
sudo chown $USER $LOGDIR/*valgrind*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -x $HLR_AUC_GW ]; then
|
if [ -x $HLR_AUC_GW ]; then
|
||||||
$HLR_AUC_GW -m $DIR/auth_serv/hlr_auc_gw.milenage_db > $LOGDIR/$DATE-hlr_auc_gw &
|
$HLR_AUC_GW -m $DIR/auth_serv/hlr_auc_gw.milenage_db > $LOGDIR/hlr_auc_gw &
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$HAPD -ddKt $DIR/auth_serv/as.conf > $LOGDIR/$DATE-auth_serv &
|
$HAPD -ddKt $DIR/auth_serv/as.conf > $LOGDIR/auth_serv &
|
||||||
|
|
||||||
# wait for programs to be fully initialized
|
# wait for programs to be fully initialized
|
||||||
for i in 0 1 2; do
|
for i in 0 1 2; do
|
||||||
|
|
Loading…
Reference in a new issue