Page Menu
Home
ClusterLabs Projects
Search
Configure Global Search
Log In
Files
F2020081
autobuild.sh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
autobuild.sh
View Options
#!/bin/sh
#
# This script is called by buildbot to test
# corosync. It is run continously to help catch regressions.
#
# ENVIRONMENT variables that affect it's behaviour:
#
# TEST_NODES - the hostnames of the nodes to be tested
# TARGET - this is used by mock so look in /etc/mock for
# possible options.
#
LOG="echo CTS: "
# required packages
which mock >/dev/null 2>&1
if [ $? -ne 0 ]
then
$LOG 'please install mock (yum install mock).'
exit 1
fi
MOCK=/usr/bin/mock
git clean -xfd
set -e
$LOG 'running autogen ...'
./autogen.sh
$LOG 'running configure ...'
./configure --enable-testagents --enable-watchdog --enable-monitoring
$LOG 'building source rpm'
rm -f *.src.rpm
make srpm
SRPM=$(ls *src.rpm)
if [ ! -f $SRPM ]
then
$LOG no source rpm to build from!
exit 1
fi
if [ -z "$TARGET" ]
then
TARGET=fedora-16-x86_64
fi
case $TARGET in
fedora-15-x86_64)
EXTRA_WITH=" --with systemd"
;;
fedora-16-x86_64)
EXTRA_WITH=" --with systemd"
;;
fedora-17-x86_64)
EXTRA_WITH=" --with systemd"
;;
*)
esac
RPM_DIR=/var/lib/mock/$TARGET/result
rm -f $RPM_DIR/corosync*.rpm
$LOG "running mock rebuild ($SRPM)"
$MOCK -v -r $TARGET --no-clean --rebuild $SRPM --with testagents --with watchdog --with monitoring $EXTRA_WITH
if [ -z "$TEST_NODES" ]
then
$LOG no test nodes, exiting without running cts.
exit 0
else
# start the VMs, or leave them running?
true
fi
RPM_LIST=
for r in $RPM_DIR/corosync*.rpm
do
case $r in
*src.rpm)
;;
*-devel-*)
;;
*)
RPM_LIST="$RPM_LIST $r"
;;
esac
done
$LOG installing $RPM_LIST
$LOG onto the test nodes $TEST_NODES
# load and install rpm(s) onto the nodes
for n in $TEST_NODES
do
$LOG "Installing onto $n"
sudo ssh $n "rm -rf /tmp/corosync*.rpm"
sudo ssh $n "rm -f /etc/corosync/corosync.conf.*"
sudo scp $RPM_LIST $n:/tmp/
sudo ssh $n "rpm --nodeps --force -Uvf /tmp/corosync*.rpm"
done
$LOG 'running CTS ...'
CTS_LOG=$(pwd)/cts.log
rm -f $CTS_LOG
pushd cts
# needs sudo to read /var/log/messages
sudo -n ./corolab.py --nodes "$TEST_NODES" --outputfile $CTS_LOG $CTS_ARGS
popd
File Metadata
Details
Attached
Mime Type
text/x-shellscript
Expires
Mon, Dec 23, 12:27 PM (1 d, 8 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1109940
Default Alt Text
autobuild.sh (2 KB)
Attached To
Mode
rC Corosync
Attached
Detach File
Event Timeline
Log In to Comment