46 lines
1.2 KiB
Bash
46 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
# Exit immediately if a command exits with a non-zero status.
|
|
set -e
|
|
|
|
# Paths configuration
|
|
CURRENT_DIR="${PWD}"
|
|
VOLUMES_DIR="${CURRENT_DIR}/volumes"
|
|
CONFIG_REPO_DIR="/opt/docker/lgsm-cs-funmaps-addon"
|
|
|
|
# Function to display [INFO] in blue and the message in default color
|
|
info() {
|
|
printf "\033[0;34m[INFO1337]\033[0m %s\n" "$1"
|
|
}
|
|
|
|
# Update script from Git repository
|
|
info "Checking for updates in Git repository..."
|
|
git fetch
|
|
|
|
LOCAL=$(git rev-parse @)
|
|
REMOTE=$(git rev-parse @{u})
|
|
|
|
if [ $LOCAL != $REMOTE ]; then
|
|
info "Updating deploy script from Git repository..."
|
|
git pull
|
|
exec "$0" "$@"
|
|
exit
|
|
fi
|
|
|
|
info "Stopping Docker container..."
|
|
docker-compose down
|
|
|
|
info "Cloning configuration repository to ${CONFIG_REPO_DIR}..."
|
|
sudo git clone ssh://git@git.zinomedia.de:222/zino/lgsm-cs-funmaps-addon.git "${CONFIG_REPO_DIR}"
|
|
|
|
info "Merging configuration from ${CONFIG_REPO_DIR} to ${VOLUMES_DIR}..."
|
|
sudo rsync -a "${CONFIG_REPO_DIR}/" "${VOLUMES_DIR}/"
|
|
|
|
info "Removing configuration repository from ${CONFIG_REPO_DIR}..."
|
|
sudo rm -rf "${CONFIG_REPO_DIR}"
|
|
|
|
info "Starting Docker container with customized configuration..."
|
|
docker-compose up -d
|
|
|
|
info "Deployment completed successfully."
|