echo " "
}
+require_root()
+{
+MUID=`/usr/bin/id | awk -F= '{print $2}' | awk -F\( '{print $1}'`
+if [ $MUID != 0 ] ; then
+ echo " "
+ echo "You must be root to run this test."
+ echo " ===== !!!! $TestName not run at `date +%R:%S` ==="
+ echo " ===== !!!! $TestName not run at `date +%R:%S` !!!! ===== " >>test.out
+ echo " "
+ exit 1
+fi
+}
+
+
set_debug()
{
debug=$1
run_bacula()
{
+ debug_wait
if test "$debug" -eq 1 ; then
- bin/bacula start
+ bin/bacula-ctl-sd start
+ bin/bacula-ctl-fd start
+ bin/bacula-ctl-dir start
cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf
else
bin/bacula start 2>&1 >/dev/null
fi
}
+run_bscan()
+{
+ if test "$debug" -eq 1 ; then
+ bin/bscan $* | tee tmp/log.out
+ else
+ bin/bscan $* 2>&1 >/dev/null
+ fi
+}
+
stop_bacula()
{
check_for_zombie_jobs()
{
- scripts/check_for_zombie_jobs $1
+ scripts/check_for_zombie_jobs $*
}
change_jobname()
{
- if test $# == 1; then
+ if test $# -eq 1; then
oldname=NightlySave
newname=$1
else
fi
rm -f bin/1
mv bin/bacula-dir.conf bin/1
- echo "s%${oldname}%${newname}%g" >/tmp/1
- sed -f /tmp/1 bin/1 >bin/bacula-dir.conf
- echo "Job ${oldname} changed to ${newname}"
+ echo "s%${oldname}%${newname}%g" >tmp/1
+ sed -f tmp/1 bin/1 >bin/bacula-dir.conf
+# echo "Job ${oldname} changed to ${newname}"
}
check_two_logs()
bstat=$?
grep "^ Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null
rstat=$?
+ grep "^ Termination: *Restore OK -- warning file count mismatch" tmp/log2.out 2>&1 >/dev/null
+ if test $? -eq 0; then
+ rstat = 2
+ fi
}
check_restore_diff()
if [ $dstat != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
echo " "
echo " "
- echo " !!!!! $TestName Bacula source failed!!! !!!!! "
+ echo " !!!!! $TestName failed!!! !!!!! "
echo " !!!!! $TestName failed!!! !!!!! " >>test.out
if [ $bstat != 0 -o $rstat != 0 ] ; then
echo " !!!!! Bad Job termination status !!!!! "
echo " !!!!! Bad Job termination status !!!!! " >>test.out
+ echo " bstat=$bstat rstat=$rstat dstat=$dstat"
else
echo " !!!!! Restored files differ !!!!! "
echo " !!!!! Restored files differ !!!!! " >>test.out
+ echo " bstat=$bstat rstat=$rstat dstat=$dstat"
fi
echo " "
else
- echo " ===== $TestName Bacula source OK `date +%R:%S` ===== "
+ echo " ===== $TestName OK `date +%R:%S` ===== "
echo " ===== $TestName OK `date +%R:%S` ===== " >>test.out
- scripts/cleanup
+ if test "$debug" -eq 0 ; then
+ scripts/cleanup
+ fi
fi
}
scripts/cleanup
}
+debug_wait()
+{
+ if test "x${REGRESS_WAIT}" = "x1"; then
+ echo "Start Bacula under debugger and enter anything when ready ..."
+ read a
+ fi
+}
# Save current directory
cwd=`pwd`
+if test "x${REGRESS_DEBUG}" = "x1"; then
+ set_debug 1
+else
+ set_debug 0
+fi
+
+# Source the configuration variables
+. ${cwd}/config