poppy/run_poppy.sh
amitgandhinz 0d08dfa66e Added Docker Files to mimic third party API's
This change works towards making the API tests pass
against Mimic'd drivers so that real production accounts
do not need to be set up - namely:
- Mimic - Fastly
- Mimic - Keystone

It also makes the mimic fastly instance the default driver in /etc

Implements: bp/mimic-fastly

Change-Id: I35d36fbc2452fc4e2233c19abefd738c9975edd0
2015-08-04 15:12:34 -04:00

92 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
DAEMONIZED=false
WORKERS = 6
for i in "$@"
do
case $i in
-d|--daemonized)
DAEMONIZED=true
shift # past argument=value
;;
-w=*|--workers=*)
WORKERS="${i#*=}"
shift # past argument=value
;;
-?|--help)
echo "USAGE: ./run_poppy.sh -d -w=10"
echo "-d | --daemonized : run in daemonized mode"
echo "-w | --workers : the number of poppy-worker processes to spawn (defaults to 6)"
exit
shift
;;
*)
echo "Invalid Options"
echo "Run ./run_poppy.sh --help for valid parameters."
exit
# unknown option
;;
esac
done
pip install docker-compose
# remove existing containers
docker kill compose_cassandra_1
docker kill compose_zookeeper_1
docker rm compose_cassandra_1
docker rm compose_zookeeper_1
# start new containers
docker-compose -f docker/compose/dependencies.yml up -d
is_cassandra_ready() {
nc -z dockerhost 9042
}
is_zookeeper_ready() {
nc -z dockerhost 2181
}
# wait until cassandra is ready
while ! is_cassandra_ready -eq 1
do
echo "still trying to connect to cassandra"
sleep 1
done
echo "connected successfully to cassandra"
# wait until zookeeper is ready
while ! is_zookeeper_ready -eq 1
do
echo "still trying to connect to zookeeper"
sleep 1
done
echo "connected successfully to zookeeper"
# start the poppy-workers
COUNTER=0
while [ $COUNTER -lt $WORKERS ]; do
exec poppy-worker > /dev/null 2>&1 &
echo "poppy-worker spawned."
let COUNTER=COUNTER+1
done
# start the poppy-server
if $DAEMONIZED; then
exec poppy-server > /dev/null 2>&1 &
echo "poppy-server spawned."
else
exec poppy-server
fi
echo "Poppy Server and Workers Started"