SIEMbitwardendnscrypthome assistantjellyfinjitsimulti-factor authenticationnextcloudonlyofficepiholeraspberry pirocket.chatsyncthingtorwazuhwireguard
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.0 KiB
46 lines
1.0 KiB
#!/bin/bash |
|
|
|
set -e |
|
|
|
SERVICE="$1" |
|
shift |
|
|
|
export MISTBORN_HOME="/opt/mistborn" |
|
export MISTBORN_SERVICE_FILE=${MISTBORN_HOME}/.envs/.production/.${SERVICE} |
|
export MISTBORN_SERVICE_INIT=${MISTBORN_HOME}/scripts/services/${SERVICE}/init.sh |
|
|
|
# check and create file if needed |
|
${MISTBORN_HOME}/scripts/env/check_env_file.sh ${SERVICE} |
|
|
|
# read in variables |
|
set -a |
|
source ${MISTBORN_HOME}/.env |
|
|
|
if [[ -f "${MISTBORN_SERVICE_FILE}" ]]; then |
|
echo "Loading service variables" |
|
source ${MISTBORN_SERVICE_FILE} |
|
else |
|
echo "No service variables to load. Proceeding." |
|
fi |
|
set +a |
|
|
|
# init script |
|
if [[ -f "${MISTBORN_SERVICE_INIT}" ]]; then |
|
echo "Running init script" |
|
${MISTBORN_SERVICE_INIT} |
|
else |
|
echo "No init script. Proceeding." |
|
fi |
|
|
|
# ensure base is up and listening |
|
echo "Waiting for Mistborn-base to finish starting up..." |
|
|
|
while ! nc -z 10.2.3.1 5000; do |
|
WAIT_TIME=$((5 + $RANDOM % 15)) |
|
echo "Waiting ${WAIT_TIME} seconds for Mistborn-base..." |
|
sleep ${WAIT_TIME} |
|
done |
|
|
|
echo "Mistborn-base is running" |
|
|
|
exec "$@"
|
|
|