53 lines
1 KiB
Bash
Executable file
53 lines
1 KiB
Bash
Executable file
#!/bin/bash
|
|
set -o errexit
|
|
set -o xtrace
|
|
|
|
|
|
EXECUTOR_NUMBER=$1
|
|
CONFIGURATION=$2
|
|
ADAPTER=$3
|
|
RC=$4
|
|
|
|
function usage() {
|
|
echo "Usage: $0 - Build a test configuration"
|
|
echo ""
|
|
echo "$0 [EXECUTOR_NUMBER] [CONFIGURATION] [ADAPTER] [RC (optional)]"
|
|
exit 1
|
|
}
|
|
|
|
# Validate inputs
|
|
if [[ "$EXECUTOR_NUMBER" = "" || "$CONFIGURATION" = "" || "$ADAPTER" = "" ]]; then
|
|
usage
|
|
fi
|
|
|
|
# Configuration of xenrc
|
|
XENRC=/var/lib/jenkins/xenrc
|
|
if [ ! -e $XENRC ]; then
|
|
echo "/var/lib/jenkins/xenrc is not present! See README.md"
|
|
exit 1
|
|
fi
|
|
|
|
# Move to top of devstack
|
|
cd ../..
|
|
|
|
# Use xenrc as the start of our localrc
|
|
cp $XENRC localrc
|
|
|
|
# Set the PUB_IP
|
|
PUB_IP=192.168.1.1$EXECUTOR_NUMBER
|
|
echo "PUB_IP=$PUB_IP" >> localrc
|
|
|
|
# Overrides
|
|
echo "$RC" >> localrc
|
|
|
|
# Source localrc
|
|
. localrc
|
|
|
|
# Make host ip available to tester
|
|
echo "HEAD=$PUB_IP" > addresses
|
|
|
|
# Build configuration
|
|
REMOTE_DEVSTACK=/root/devstack
|
|
ssh root@$XEN_IP "rm -rf $REMOTE_DEVSTACK"
|
|
scp -pr . root@$XEN_IP:$REMOTE_DEVSTACK
|
|
ssh root@$XEN_IP "cd $REMOTE_DEVSTACK/tools/xen && ./build_domU.sh"
|