1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
#!/bin/sh
#
# lcg-bdii-test, Unit test for the bdii.
#
# Original version by L.Field (2004-01-22)
#
# $Id: lcg-bdii-test,v 1.3 2006/07/02 23:18:20 maart Exp $
#
# Get enviroment.
TEST_DIR=$PWD/bdii-test-dir
TOP_DIR=`pwd |sed 's#/tests##'`
USER=`id -u -n`
echo
echo "Writing config files for the test...";
if [ ! -d $TEST_DIR ]; then
mkdir -p $TEST_DIR
make -C $TOP_DIR install install-doc prefix=$TEST_DIR
fi
#Create bdii.conf file.
sed "
s#/opt/bdii#$TEST_DIR#
s#bdiiuser#$USER#
s#30#20#
s#60#20#
" $TEST_DIR/doc/bdii.conf.example > $TEST_DIR/etc/bdii.conf
#Create bdii-update.conf file.
cat <<EOF > $TEST_DIR/etc/bdii-update.conf
SE1 file://$TEST_DIR/ldif-scripts/dummy1-ldif
SE2 file://$TEST_DIR/ldif-scripts/dummy2-ldif
SE5 file://$TEST_DIR/ldif-scripts/bad-data
#ldap://bad.config
EOF
# Set the env varible for the bdii init.d script.
export BDII_CONF=$TEST_DIR/etc/bdii.conf
export X509_HOST_CERT=$TOP_DIR/../stage/share/text/certificates/grid-security/hostcert.pem
export X509_HOST_KEY=$TOP_DIR/../stage/share/text/certificates/grid-security/hostkey.pem
echo "Restart the bdii to clear the LDAP database."
$TEST_DIR/sbin/bdii restart
sleep 1;
RESULT=`ldapsearch -LLL -H ldap://localhost:2170 -x -b "o=grid" |wc -l`
RESULT=`echo $RESULT`
if [ ! "$RESULT" -eq "3" ]; then
echo "Error starting bdii, line count != 3"
exit 1
fi
echo "LDAP database clean (line count: $RESULT), updateing..."
$TEST_DIR/sbin/bdii-refresh $TEST_DIR/etc/bdii.conf
RESULT=`ldapsearch -LLL -H ldap://localhost:2170 -x -b "o=grid" |wc -l`
RESULT=`echo $RESULT`
if [ ! "$RESULT" -eq "164" ]; then
echo "Error updating LDAP database, line count != 164"
exit 1
fi
echo "LDAP database updated (line count: $RESULT), re-configuring..."
#Create bdii-update.conf file.
cat <<EOF > $TEST_DIR/etc/bdii-update.conf
SE3 file://$TEST_DIR/ldif-scripts/test-hang
SE3 file://does/not/exist
SE32 file://different-region
EOF
echo "Updating database with bad urls..."
$TEST_DIR/sbin/bdii-refresh $TEST_DIR/etc/bdii.conf
RESULT=`ldapsearch -LLL -H ldap://localhost:2170 -x -b "o=grid" |wc -l`
RESULT=`echo $RESULT`
if [ ! "$RESULT" -eq "3" ]; then
echo "Error starting bdii, line count != 3"
exit 1
fi
echo "LDAP database updated (line count: $RESULT)"
echo "Test Successful"
exit 0
|