summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2012-10-13 14:37:03 +0200
committerChristian Pointner <equinox@spreadspace.org>2012-10-13 14:37:03 +0200
commit48bae050d1dd2535492a21ea30f64ad0ebc3155b (patch)
treec2e2785907e2b661bd45fba736a49365cf258e2e
parentfixed deployment (diff)
deployment and start, stop, restart work now
-rwxr-xr-xsrc/flufigut-client.sh16
-rwxr-xr-xsrc/manage.sh34
2 files changed, 40 insertions, 10 deletions
diff --git a/src/flufigut-client.sh b/src/flufigut-client.sh
index 1fd6de1..aad3a06 100755
--- a/src/flufigut-client.sh
+++ b/src/flufigut-client.sh
@@ -90,16 +90,20 @@ case "$command" in
;;
start)
echo -n "starting ... "
+ while read line; do
+ type=`echo $line | awk '{ print $1 }'`
+ name=`echo $line | awk '{ print $2 }'`
+ start_instance $type $name
+ done
echo "ok."
;;
stop)
echo -n "stopping ... "
- echo "ok."
- ;;
- restart)
- echo -n "stopping ... "
- sleep 1
- echo -n "starting ..."
+ while read line; do
+ type=`echo $line | awk '{ print $1 }'`
+ name=`echo $line | awk '{ print $2 }'`
+ stop_instance $type $name
+ done
echo "ok."
;;
scp)
diff --git a/src/manage.sh b/src/manage.sh
index 9123cb8..d6fb813 100755
--- a/src/manage.sh
+++ b/src/manage.sh
@@ -57,12 +57,32 @@ deploy_all() {
done
}
+generate_instance_list() {
+ machine=$1
+
+ rm -f "$OUTPUT_DIR/$machine.list"
+ touch "$OUTPUT_DIR/$machine.list"
+ if [ -d "$OUTPUT_DIR/$machine/managers" ]; then
+ for name in "$OUTPUT_DIR/$machine/managers/"*; do
+ name=`basename "$name"`
+ echo "manager $name" >> "$OUTPUT_DIR/$machine.list"
+ done
+ fi
+ for name in "$OUTPUT_DIR/$machine/workers/"*.xml; do
+ name=`basename "$name"`
+ name=${name%%.xml}
+ echo "worker $name" >> "$OUTPUT_DIR/$machine.list"
+ done
+}
+
start_all() {
for machine in "$OUTPUT_DIR"/*; do
if [ -d "$machine" ] && [ -d "$machine/managers" ]; then
machine=`basename $machine`
echo " $machine (manager, worker)"
- ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" start
+ generate_instance_list $machine
+ ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" start < "$OUTPUT_DIR/$machine.list"
+ rm "$OUTPUT_DIR/$machine.list"
break
fi
done
@@ -70,7 +90,9 @@ start_all() {
if [ -d "$machine" ] && [ ! -d "$machine/managers" ]; then
machine=`basename $machine`
echo " $machine (worker)"
- ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" start
+ generate_instance_list $machine
+ ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" start < "$OUTPUT_DIR/$machine.list"
+ rm "$OUTPUT_DIR/$machine.list"
break
fi
done
@@ -81,7 +103,9 @@ stop_all() {
if [ -d "$machine" ] && [ ! -d "$machine/managers" ]; then
machine=`basename $machine`
echo " $machine (worker)"
- ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" stop
+ generate_instance_list $machine
+ ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" stop < "$OUTPUT_DIR/$machine.list"
+ rm "$OUTPUT_DIR/$machine.list"
break
fi
done
@@ -89,7 +113,9 @@ stop_all() {
if [ -d "$machine" ] && [ -d "$machine/managers" ]; then
machine=`basename $machine`
echo " $machine (manager, worker)"
- ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" stop
+ generate_instance_list $machine
+ ssh -i "$SSH_KEY" -F "$SSH_CONFIG" $SSH_USER@"$machine" stop < "$OUTPUT_DIR/$machine.list"
+ rm "$OUTPUT_DIR/$machine.list"
break
fi
done