| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 1 | #!/bin/bash | 
|  | 2 |  | 
| Jesse Andrews | d7326d2 | 2011-11-20 10:02:26 -0800 | [diff] [blame] | 3 | # exit on error to stop unexpected errors | 
|  | 4 | set -o errexit | 
|  | 5 | set -o xtrace | 
|  | 6 |  | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 7 | EXECUTOR_NUMBER=$1 | 
|  | 8 | CONFIGURATION=$2 | 
| Anthony Young | 6ecc4f2 | 2011-11-09 22:38:48 -0800 | [diff] [blame] | 9 | ADAPTER=$3 | 
| Anthony Young | 053906d | 2011-11-10 11:38:09 -0800 | [diff] [blame] | 10 | RC=$4 | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 11 |  | 
|  | 12 | function usage() { | 
|  | 13 | echo "Usage: $0 - Build a test configuration" | 
|  | 14 | echo "" | 
| Anthony Young | 053906d | 2011-11-10 11:38:09 -0800 | [diff] [blame] | 15 | echo "$0 [EXECUTOR_NUMBER] [CONFIGURATION] [ADAPTER] [RC (optional)]" | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 16 | exit 1 | 
|  | 17 | } | 
|  | 18 |  | 
|  | 19 | # Validate inputs | 
| Anthony Young | 0ae5fd0 | 2011-11-09 22:39:56 -0800 | [diff] [blame] | 20 | if [[ "$EXECUTOR_NUMBER" = "" || "$CONFIGURATION" = ""  || "$ADAPTER" = "" ]]; then | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 21 | usage | 
|  | 22 | fi | 
|  | 23 |  | 
|  | 24 | # This directory | 
|  | 25 | CUR_DIR=$(cd $(dirname "$0") && pwd) | 
|  | 26 |  | 
|  | 27 | # devstack directory | 
|  | 28 | cd ../../.. | 
| Anthony Young | 33d2a4e | 2011-11-10 13:26:16 -0800 | [diff] [blame] | 29 | TOP_DIR=$(pwd) | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 30 |  | 
| Anthony Young | a138eaf | 2011-11-14 12:46:51 -0800 | [diff] [blame] | 31 | # Deps | 
| Jesse Andrews | d7326d2 | 2011-11-20 10:02:26 -0800 | [diff] [blame] | 32 | apt-get install -y --force-yes libvirt-bin || true | 
| Anthony Young | a138eaf | 2011-11-14 12:46:51 -0800 | [diff] [blame] | 33 |  | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 34 | # Name test instance based on executor | 
| Anthony Young | 6ecc4f2 | 2011-11-09 22:38:48 -0800 | [diff] [blame] | 35 | BASE_NAME=executor-`printf "%02d" $EXECUTOR_NUMBER` | 
|  | 36 | GUEST_NAME=$BASE_NAME.$ADAPTER | 
| Anthony Young | dbcdf90 | 2011-11-10 11:14:16 -0800 | [diff] [blame] | 37 | virsh list | grep $BASE_NAME | cut -d " " -f1 | xargs -n 1 virsh destroy || true | 
|  | 38 | virsh net-list | grep $BASE_NAME | cut -d " " -f1 | xargs -n 1 virsh net-destroy || true | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 39 |  | 
|  | 40 | # Configure localrc | 
|  | 41 | cat <<EOF >localrc | 
|  | 42 | RECLONE=yes | 
|  | 43 | GUEST_NETWORK=$EXECUTOR_NUMBER | 
| Anthony Young | 6ecc4f2 | 2011-11-09 22:38:48 -0800 | [diff] [blame] | 44 | GUEST_NAME=$GUEST_NAME | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 45 | FLOATING_RANGE=192.168.$EXECUTOR_NUMBER.128/27 | 
| Anthony Young | c8af0c5 | 2011-11-11 11:17:47 -0800 | [diff] [blame] | 46 | GUEST_CORES=1 | 
|  | 47 | GUEST_RAM=12574720 | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 48 | MYSQL_PASSWORD=chicken | 
|  | 49 | RABBIT_PASSWORD=chicken | 
|  | 50 | SERVICE_TOKEN=chicken | 
| Jesse Andrews | 9f1891e | 2012-03-04 23:40:05 -0800 | [diff] [blame] | 51 | SERVICE_PASSWORD=chicken | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 52 | ADMIN_PASSWORD=chicken | 
|  | 53 | USERNAME=admin | 
|  | 54 | TENANT=admin | 
| Anthony Young | ea1a586 | 2011-11-10 11:27:51 -0800 | [diff] [blame] | 55 | NET_NAME=$BASE_NAME | 
| Anthony Young | 3bff7b3 | 2011-11-11 10:51:24 -0800 | [diff] [blame] | 56 | ACTIVE_TIMEOUT=45 | 
|  | 57 | BOOT_TIMEOUT=45 | 
| Anthony Young | 053906d | 2011-11-10 11:38:09 -0800 | [diff] [blame] | 58 | $RC | 
| Anthony Young | ccd4ea3 | 2011-11-08 17:25:12 -0600 | [diff] [blame] | 59 | EOF | 
|  | 60 | cd tools | 
|  | 61 | sudo ./build_uec.sh | 
| Anthony Young | b225682 | 2011-11-10 12:57:59 -0800 | [diff] [blame] | 62 |  | 
|  | 63 | # Make the address of the instances available to test runners | 
|  | 64 | echo HEAD=`cat /var/lib/libvirt/dnsmasq/$BASE_NAME.leases | cut -d " " -f3` > $TOP_DIR/addresses |