#!/bin/bash # Copyright (C) 2009 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. iterations=150 failures=0 i=0 LOGDIR="$HOME/backup_tests" LOGFILE="$LOGDIR/backup_stress.`date +%s`.log" export BUGREPORT_DIR="$LOGDIR/bugreports" # make sure that we have a place to put logs and bugreports mkdir -p $LOGDIR $BUGREPORT_DIR echo "logfile is $LOGFILE" (while (sleep 10); do failed=0 echo echo "Iteration $i at `date`" echo ./test_backup.sh "$@" 2>&1 sleep 10 echo "Restore at `date`" echo ./test_restore.sh "$@" 2>&1 || failed=1 if [ "$failed" -ne 0 ]; then failures=$(($failures+1)) # Long and verbose so it sticks out echo "FAILED iteration $i of $iterations; $failures failures so far" echo "FAILED iteration $i of $iterations; $failures failures so far" > /dev/stderr else printf "Iteration %d:\tPASS; remaining: %d\n" $i $(($iterations - $i - 1)) printf "Iteration %d:\tPASS; remaining: %d\n" $i $(($iterations - $i - 1)) > /dev/stderr fi echo "End $i at `date`" i=$(($i+1)) if [ $i -eq $iterations ]; then echo "DONE: $iterations iterations with $failures failures." echo "DONE: $iterations iterations with $failures failures." > /dev/stderr [ "$failures" -eq 0 ] && exit 0 exit 1 fi done) > "$LOGFILE"