added check lines
This commit is contained in:
@@ -4,6 +4,11 @@ cd /scripts
|
|||||||
|
|
||||||
DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL:-registry.format.hu}
|
DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL:-registry.format.hu}
|
||||||
USER_INIT_PATH=$USER_INIT_PATH
|
USER_INIT_PATH=$USER_INIT_PATH
|
||||||
|
|
||||||
|
FRAMWEORK_SCHEDULER_NAME=${FRAMEWORK_SCHEDULER_NAME:-framework-scheduler}
|
||||||
|
FRAMEWORK_SCHEDULER_NETWORK=${FRAMEWORK_SCHEDULER_NETWORK:-framework-network}
|
||||||
|
FRAMEWORK_NETWORK_SUBNET=${FRAMEWORK_NETWORK_SUBNET:-"172.18.255.0/24"}
|
||||||
|
|
||||||
WEB_SERVER=${WEB_SERVER:-webserver}
|
WEB_SERVER=${WEB_SERVER:-webserver}
|
||||||
WEB_IMAGE=${WEB_IMAGE:-web-installer}
|
WEB_IMAGE=${WEB_IMAGE:-web-installer}
|
||||||
WEBSERVER_PORT=${WEBSERVER_PORT:-8080}
|
WEBSERVER_PORT=${WEBSERVER_PORT:-8080}
|
||||||
@@ -16,6 +21,7 @@ REDIS_VERSION=${REDIS_VERSION:-latest}
|
|||||||
SOURCE=$SOURCE
|
SOURCE=$SOURCE
|
||||||
SMARTHOST_PROXY_PATH=$SMARTHOST_PROXY_PATH
|
SMARTHOST_PROXY_PATH=$SMARTHOST_PROXY_PATH
|
||||||
|
|
||||||
|
|
||||||
GIT_URL=$GIT_URL
|
GIT_URL=$GIT_URL
|
||||||
TOKEN=$TOKEN
|
TOKEN=$TOKEN
|
||||||
REPO=$REPO
|
REPO=$REPO
|
||||||
@@ -26,6 +32,107 @@ CURL_RETRIES=${CURL_RETRIES:-360}
|
|||||||
|
|
||||||
SCHEDULER_SERVICEFILE_GENERATE_TEST=${SCHEDULER_SERVICEFILE_GENERATE_TEST:-false}
|
SCHEDULER_SERVICEFILE_GENERATE_TEST=${SCHEDULER_SERVICEFILE_GENERATE_TEST:-false}
|
||||||
|
|
||||||
|
scheduler_manager(){
|
||||||
|
|
||||||
|
FRAMEWORK_NAME=$1;
|
||||||
|
FRAMEWORK_NETWORK=$2;
|
||||||
|
FRAMEWORK_SUBNET=$3;
|
||||||
|
FRAMEWORK_UPDATE=$4;
|
||||||
|
|
||||||
|
if [ "$FRAMEWORK_NETWORK" == "0" ]; then
|
||||||
|
echo "Restarting the scheduler with the correct network"
|
||||||
|
|
||||||
|
docker network create $FRAMEWORK_SCHEDULER_NETWORK --subnet $FRAMEWORK_NETWORK_SUBNET
|
||||||
|
|
||||||
|
if [ "$FRAMEWORK_SUBNET" == "0" ]; then
|
||||||
|
echo "Restarting the scheduler with the correct subnet"
|
||||||
|
docker stop $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker rm $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker run -d --name $FRAMEWORK_SCHEDULER_NAME --network $FRAMEWORK_SCHEDULER_NETWORK --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /scripts:/scripts $DOCKER_REGISTRY_URL/$FRAMEWORK_SCHEDULER_NAME
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$FRAMEWORK_NAME" == "0" ]; then
|
||||||
|
echo "Restarting the scheduler with the correct name"
|
||||||
|
docker stop $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker rm $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker run -d --name $FRAMEWORK_SCHEDULER_NAME --network $FRAMEWORK_SCHEDULER_NETWORK --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /scripts:/scripts $DOCKER_REGISTRY_URL/$FRAMEWORK_SCHEDULER_NAME
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if [ "$FRAMEWORK_UPDATE" == "0" ]; then
|
||||||
|
echo "Restarting the scheduler with the correct version"
|
||||||
|
docker stop $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker rm $ACTUAL_FRAMEWORK_SCHEDULER_NAME
|
||||||
|
docker run -d --name $FRAMEWORK_SCHEDULER_NAME --network $FRAMEWORK_SCHEDULER_NETWORK --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v /scripts:/scripts $DOCKER_REGISTRY_URL/$FRAMEWORK_SCHEDULER_NAME
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
check_framework_scheduler_status(){
|
||||||
|
|
||||||
|
ACTUAL_FRAMEWORK_SCHEDULER_NAME=$1;
|
||||||
|
|
||||||
|
if "$ACTUAL_FRAMEWORK_SCHEDULER_NAME" == "$FRAMEWORK_SCHEDULER_NAME"; then
|
||||||
|
echo "Scheduler name not correct, not needed to restart is with the correct name";
|
||||||
|
else
|
||||||
|
FRAMEWORK_NAME=0;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$(docker network ls --filter name=^$FRAMEWORK_SCHEDULER_NETWORK$ --format {{.Name}})" ]; then
|
||||||
|
echo "Network $FRAMEWORK_SCHEDULER_NETWORK is available, not needed to restart the scheduler"
|
||||||
|
|
||||||
|
if [ "$(docker network inspect $FRAMEWORK_SCHEDULER_NETWORK --format '{{range .IPAM.Config}}{{.Subnet}}{{end}}')" == "$FRAMEWORK_NETWORK_SUBNET" ]; then
|
||||||
|
echo "Network $FRAMEWORK_SCHEDULER_NETWORK is available with the correct subnet, not needed to restart the scheduler"
|
||||||
|
|
||||||
|
check_framework_network_availabity
|
||||||
|
|
||||||
|
|
||||||
|
else
|
||||||
|
FRAMEWORK_SUBNET=0;
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
FRAMEWORK_NETWORK=0;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ]; then
|
||||||
|
|
||||||
|
else
|
||||||
|
FRAMEWORK_UPDATE=0;
|
||||||
|
fi
|
||||||
|
|
||||||
|
scheduler_manager $FRAMEWORK_NAME $FRAMEWORK_NETWORK $FRAMEWORK_SUBNET $FRAMEWORK_UPDATE
|
||||||
|
|
||||||
|
#echo '{"FRAMEWORK_NAME": "$FRAMEWORK_NAME", "FRAMEWORK_NETWORK": "$FRAMEWORK_NETWORK"}'
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
check_framework_network_availabity() {
|
||||||
|
if [ -z "$(docker network ls --filter name=^$FRAMEWORK_SCHEDULER_NETWORK$ --format {{.Name}})" ]; then
|
||||||
|
|
||||||
|
# Define the subnet you want to check
|
||||||
|
desired_subnet=$FRAMEWORK_NETWORK_SUBNET
|
||||||
|
existing_subnets=$(docker network inspect $(docker network ls -q) --format '{{range .IPAM.Config}}{{.Subnet}}{{end}}')
|
||||||
|
|
||||||
|
# Check if the desired subnet is in the list of existing subnets
|
||||||
|
if echo "$existing_subnets" | grep -q "$desired_subnet"; then
|
||||||
|
echo "Subnet $desired_subnet is not available for creation. Need to find another network"
|
||||||
|
else
|
||||||
|
echo "Subnet $desired_subnet is available for creation."
|
||||||
|
|
||||||
|
fi
|
||||||
|
echo "Creating network $FRAMEWORK_SCHEDULER_NETWORK"
|
||||||
|
docker network create $FRAMEWORK_SCHEDULER_NETWORK --subnet $FRAMEWORK_NETWORK_SUBNET
|
||||||
|
else
|
||||||
|
echo "Network $DOCKER_NETWORK_NAME already exists, need to define another name"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
check_redis_availability() {
|
check_redis_availability() {
|
||||||
REDIS_SERVER="$1"
|
REDIS_SERVER="$1"
|
||||||
REDIS_PORT="$2"
|
REDIS_PORT="$2"
|
||||||
@@ -62,13 +169,19 @@ start_webserver () {
|
|||||||
|
|
||||||
/usr/bin/docker run -d -p $WEBSERVER_PORT:80/tcp --name $WEB_SERVER $DOCKER_REGISTRY_URL/$WEB_IMAGE:$WEBSERVER_VERSION
|
/usr/bin/docker run -d -p $WEBSERVER_PORT:80/tcp --name $WEB_SERVER $DOCKER_REGISTRY_URL/$WEB_IMAGE:$WEBSERVER_VERSION
|
||||||
}
|
}
|
||||||
###
|
### SYSTEM INITIALIZATION ###
|
||||||
|
|
||||||
# CHECKING SYSTEM ENVIRONMENTS
|
# CHECKING SYSTEM ENVIRONMENTS
|
||||||
## DOCKER VARIABLES
|
## DOCKER VARIABLES
|
||||||
|
## DOCKER NETWORK VARIABLES
|
||||||
## VERSION CHECK
|
## VERSION CHECK
|
||||||
## FILESYSTEM VARIABLES
|
## FILESYSTEM VARIABLES
|
||||||
## PORTS VARIABLES
|
## PORTS VARIABLES
|
||||||
|
### RESTART SCHEDULER IF NEEDED
|
||||||
|
|
||||||
|
check_framework_scheduler_status $HOSTNAME
|
||||||
|
|
||||||
|
check_framework_network_availabity
|
||||||
|
|
||||||
# REDIS_SERVER EXISTENCE
|
# REDIS_SERVER EXISTENCE
|
||||||
## REDIS_PORT EXISTENCE
|
## REDIS_PORT EXISTENCE
|
||||||
@@ -81,8 +194,8 @@ echo `date`" Redis initialized"
|
|||||||
start_webserver
|
start_webserver
|
||||||
echo `date`" Webserver initialized"
|
echo `date`" Webserver initialized"
|
||||||
|
|
||||||
# SUMMARY
|
#### SUMMARY
|
||||||
|
#########################################
|
||||||
# TESTING
|
# TESTING
|
||||||
sleep 86400
|
sleep 86400
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user