#!/bin/sh # # Script to setup running Bacula regression tests # check_exit_code() { if [ $? != 0 ] ; then echo "Bad exit code giving up" exit 1 fi } . ./config cwd=`pwd` if [ ! -d ${BACULA_SOURCE} ] ; then echo "The BACULA_SOURCE environment variable must be a Bacula release directory, but is not." echo " " exit 1 fi # we build and setup binaries to the $cwd/bin directory not $bin rm -rf build bin # Copy new source echo "Copying source from ${BACULA_SOURCE}" cp -rp ${BACULA_SOURCE} build check_exit_code scripts/create_sed sed -f tmp/sed_tmp scripts/regress-config.in >scripts/regress-config chmod 755 scripts/regress-config cp scripts/regress-config build cd build rm -f Makefile config.cache # Run Bacula configuration, make, install ./regress-config ${cwd} check_exit_code # Cleanup any build in source make clean make -j3 check_exit_code make install check_exit_code cp src/tools/testls ../bin check_exit_code cd ${cwd} bin/bacula stop mkdir -p working cd bin echo "Running database creation scripts" ./create_bacula_database ./drop_bacula_tables ./make_bacula_tables ./grant_bacula_privileges cd ${cwd} # Start and stop Bacula to ensure conf files are OK bin/bacula start bin/bacula stop # # Save Bacula default conf files for later use # cp -f bin/*.conf scripts