deployment_ddcdn_multisite/bin/variables.sh

55 lines
1.6 KiB
Bash

#!/bin/bash
# Texts layout
PURPLE='\033[35m'
ORANGE='\033[33m'
BLUE='\033[34m'
BOLD='\033[1m'
RESET='\033[0m'
USERNAME=""
SSH_PORT=
CADDYFILE=""
DOMAIN_NAME=""
IP=""
WEBSITE_TOKEN=""
check_global_const() {
for var_name in "$@"; do
if [[ -z "${!var_name}" ]]; then
case "$var_name" in
USERNAME)
eval "$var_name=$(getent passwd 1001 | cut -d: -f1)"
;;
SSH_PORT)
eval "$var_name=$(cat /etc/ssh/sshd_config.d/custom.conf | grep "Port " | sed 's/^Port //')"
;;
CADDYFILE)
eval "$var_name=\"/home/${USERNAME}/caddy/caddyfile/Caddyfile\""
;;
DOMAIN_NAME)
echo -e "${PURPLE}${BOLD}Enter the domain name of the website${RESET}"
read DOMAIN_NAME
eval "$var_name=$DOMAIN_NAME"
;;
IP)
eval "$var_name=$(hostname -I | cut -d' ' -f1)"
;;
WEBSITE_TOKEN)
eval "$var_name=$(docker exec -i ${DOMAIN_NAME}_Directus_DB mariadb -uroot -e "SELECT token FROM directus.directus_users WHERE email='website@${DOMAIN_NAME}';" -N)"
;;
*)
echo "Unknown variable: $var_name" >&2
;;
esac
fi
done
}
install_pkg() {
pkg="$1"
if ! dpkg -s "$pkg" >/dev/null 2>&1; then
apt update && apt install -y "$pkg"
echo -e "${PURPLE}${BOLD}${pkg} installed${RESET}"
fi
}