diff --git a/cluster-manager.sh b/cluster-manager.sh index 4e7e5d6..dbe7b07 100644 --- a/cluster-manager.sh +++ b/cluster-manager.sh @@ -146,7 +146,7 @@ case "$ACTION" in shift ARG_COMMAND=$@ if [ -z "$ARG_COMMAND" ]; then - echo "ERROR: Please specify a command: $0 touch last_access" + echo "ERROR: Please specify a command: $0 $ACTION touch last_access" exit 1 fi for HOST in ${HOSTLIST[@]}; do @@ -154,22 +154,6 @@ case "$ACTION" in done ;; - execute) - ARG_SCRIPT_NAME=$2 - if [ -z $ARG_SCRIPT_NAME ]; then - echo "ERROR: Please specify the name of the script. e.g.: $0 do_something.sh" - exit 1 - fi - if [ ! -f $ARG_SCRIPT_NAME ]; then - echo "ERROR: File $ARG_SCRIPT_NAME does not exists" - exit 1 - fi - for HOST in ${HOSTLIST[@]}; do - echo scp $ARG_SCRIPT_NAME ${SSH_USER}${HOST}.routetopa.eu:$ARG_SCRIPT_NAME - echo ssh -t ${SSH_USER}${HOST}.routetopa.eu "source $ARG_SCRIPT_NAME; rm $ARG_SCRIPT_NAME" - done - ;; - db-backup) ARG_BACKUP_NAME=$2 if [ -z $ARG_BACKUP_NAME ]; then @@ -185,7 +169,7 @@ case "$ACTION" in db-restore) ARG_BACKUP_NAME=$2 if [ -z ${ARG_BACKUP_NAME} ]; then - echo "ERROR: Please specify the name of the backup. e.g.: $0 backup.sql" + echo "ERROR: Please specify the name of the backup. e.g.: $0 $ACTION backup.sql" exit 1 fi for HOST in ${HOSTLIST[@]}; do @@ -203,7 +187,7 @@ case "$ACTION" in db-sql) ARG_SCRIPT_NAME=$2 if [ -z $ARG_SCRIPT_NAME ]; then - echo "ERROR: Please specify the name of the sql. e.g.: $0 do_something.sql" + echo "ERROR: Please specify the name of the sql. e.g.: $0 $ACTION do_something.sql" exit 1 fi if [ ! -f $ARG_SCRIPT_NAME ]; then @@ -211,8 +195,26 @@ case "$ACTION" in exit 1 fi for HOST in ${HOSTLIST[@]}; do - echo scp ${ARG_SCRIPT_NAME} ${SSH_USER}${HOST}.routetopa.eu:${ARG_SCRIPT_NAME} - echo ssh -t ${SSH_USER}${HOST}.routetopa.eu "mysql -u${MYSQL_USER} -p${MYSQL_PASS} ${MYSQL_DB} < ${ARG_SCRIPT_NAME}; rm ${ARG_SCRIPT_NAME}" + host_send_file ${HOST} ${ARG_SCRIPT_NAME} ${HOST}-${ARG_SCRIPT_NAME} + host_exec_cmd ${HOST} "mysql -u${MYSQL_USER} -p${MYSQL_PASS} ${MYSQL_DB} < ${HOST}-${ARG_SCRIPT_NAME}" + #echo scp ${ARG_SCRIPT_NAME} ${SSH_USER}${HOST}.routetopa.eu:${ARG_SCRIPT_NAME} + #echo ssh -t ${SSH_USER}${HOST}.routetopa.eu "mysql -u${MYSQL_USER} -p${MYSQL_PASS} ${MYSQL_DB} < ${ARG_SCRIPT_NAME}; rm ${ARG_SCRIPT_NAME}" + done + ;; + + script) + ARG_SCRIPT_NAME=$2 + if [ -z $ARG_SCRIPT_NAME ]; then + echo "ERROR: Please specify the name of the script. e.g.: $0 $ACTION do_something.sh" + exit 1 + fi + if [ ! -f $ARG_SCRIPT_NAME ]; then + echo "ERROR: File $ARG_SCRIPT_NAME does not exists" + exit 1 + fi + for HOST in ${HOSTLIST[@]}; do + echo scp $ARG_SCRIPT_NAME ${SSH_USER}${HOST}.routetopa.eu:$ARG_SCRIPT_NAME + echo ssh -t ${SSH_USER}${HOST}.routetopa.eu "source $ARG_SCRIPT_NAME; rm $ARG_SCRIPT_NAME" done ;; @@ -226,19 +228,19 @@ case "$ACTION" in ""|help) echo "ROUTE-TO-PA PROJECT: CLUSTER-MANAGER.SH" echo " " - echo "Usage: $0 action " + echo "Usage: $0 [options]" echo " " echo "List of actions:" echo " help : Show this screen" echo " cmd : Execute on hosts" - echo " execute