2018-04-28 04:06:48 +00:00
|
|
|
#!/bin/bash
|
2018-08-11 14:47:47 +00:00
|
|
|
for ARGUMENT in "$@"
|
|
|
|
do
|
|
|
|
KEY=$(echo $ARGUMENT | cut -f1 -d=)
|
|
|
|
VALUE=$(echo $ARGUMENT | cut -f2 -d=)
|
|
|
|
|
|
|
|
case "$KEY" in
|
|
|
|
PROXY) PROXY=${VALUE} ;;
|
|
|
|
SOCK_PORT) SOCK_PORT=${VALUE} ;;
|
|
|
|
STAT_PORT) STAT_PORT=${VALUE} ;;
|
|
|
|
STAT_FILE) STAT_FILE=${VALUE} ;;
|
|
|
|
STATS_USER) STATS_USER=${VALUE} ;;
|
|
|
|
STATS_PASS) STATS_PASS=${VALUE} ;;
|
2019-10-14 21:41:21 +00:00
|
|
|
HAPVER) HAPVER=${VALUE} ;;
|
2019-11-03 14:43:45 +00:00
|
|
|
HOST) HOST=${VALUE} ;;
|
|
|
|
USER) USER=${VALUE} ;;
|
|
|
|
PASS) PASS=${VALUE} ;;
|
|
|
|
KEY) KEY=${VALUE} ;;
|
|
|
|
SYN_FLOOD) SYN_FLOOD=${VALUE} ;;
|
2020-03-15 10:52:29 +00:00
|
|
|
SSH_PORT) SSH_PORT=${VALUE} ;;
|
2021-10-04 07:52:51 +00:00
|
|
|
DOCKER) DOCKER=${VALUE} ;;
|
|
|
|
HAP_DIR) HAP_DIR=${VALUE} ;;
|
|
|
|
CONT_NAME) CONT_NAME=${VALUE} ;;
|
2018-08-11 14:47:47 +00:00
|
|
|
*)
|
|
|
|
esac
|
|
|
|
done
|
2019-11-06 15:15:41 +00:00
|
|
|
|
2019-11-03 14:43:45 +00:00
|
|
|
export ANSIBLE_HOST_KEY_CHECKING=False
|
2019-11-06 15:15:41 +00:00
|
|
|
export ANSIBLE_DISPLAY_SKIPPED_HOSTS=False
|
2020-11-02 17:01:08 +00:00
|
|
|
export ACTION_WARNINGS=False
|
|
|
|
export LOCALHOST_WARNING=False
|
|
|
|
export COMMAND_WARNINGS=False
|
|
|
|
|
2021-10-04 07:52:51 +00:00
|
|
|
PWD=$(pwd)
|
2019-11-03 14:43:45 +00:00
|
|
|
PWD=$PWD/scripts/ansible/
|
2020-11-05 16:04:38 +00:00
|
|
|
echo "$HOST ansible_port=$SSH_PORT" > $PWD/$HOST
|
2019-11-03 14:43:45 +00:00
|
|
|
|
2021-10-04 07:52:51 +00:00
|
|
|
if [[ $DOCKER == '1' ]]; then
|
|
|
|
tags='docker'
|
|
|
|
else
|
|
|
|
tags='system'
|
|
|
|
fi
|
|
|
|
|
2019-11-03 14:43:45 +00:00
|
|
|
if [[ $KEY == "" ]]; then
|
2021-10-04 07:52:51 +00:00
|
|
|
ansible-playbook $PWD/roles/haproxy.yml -e "ansible_user=$USER ansible_ssh_pass='$PASS' variable_host=$HOST PROXY=$PROXY HAPVER=$HAPVER HAP_DIR=$HAP_DIR CONT_NAME=$CONT_NAME SOCK_PORT=$SOCK_PORT STAT_PORT=$STAT_PORT STATS_USER=$STATS_USER STATS_PASS='$STATS_PASS' STAT_FILE=$STAT_FILE SSH_PORT=$SSH_PORT SYN_FLOOD=$SYN_FLOOD" -i $PWD/$HOST -t $tags
|
2019-11-03 14:43:45 +00:00
|
|
|
else
|
2021-10-04 07:52:51 +00:00
|
|
|
ansible-playbook $PWD/roles/haproxy.yml --key-file $KEY -e "ansible_user=$USER variable_host=$HOST PROXY=$PROXY HAPVER=$HAPVER HAP_DIR=$HAP_DIR CONT_NAME=$CONT_NAME SOCK_PORT=$SOCK_PORT STAT_PORT=$STAT_PORT STATS_USER=$STATS_USER STATS_PASS='$STATS_PASS' STAT_FILE=$STAT_FILE SSH_PORT=$SSH_PORT SYN_FLOOD=$SYN_FLOOD" -i $PWD/$HOST -t $tags
|
2018-04-30 06:04:21 +00:00
|
|
|
fi
|
2018-07-25 15:57:42 +00:00
|
|
|
|
2019-11-06 15:15:41 +00:00
|
|
|
if [ $? -gt 0 ]
|
2018-04-28 04:06:48 +00:00
|
|
|
then
|
2021-01-09 15:42:08 +00:00
|
|
|
echo "error: Cannot install Haproxy service"
|
2018-04-30 06:04:21 +00:00
|
|
|
fi
|
2019-11-03 14:43:45 +00:00
|
|
|
rm -f $PWD/$HOST
|