diff --git a/deploy.sh b/deploy.sh index fdd7710..48bc95c 100755 --- a/deploy.sh +++ b/deploy.sh @@ -18,7 +18,18 @@ PUBLIC_PROXY=$(toUpperCase $PUBLIC_PROXY) SMARTHOST_PROXY=$(toUpperCase $SMARTHOST_PROXY) WIREGUARD=$(toUpperCase $WIREGUARD) OPENVPN=$(toUpperCase $OPENVPN) +LETSENCRYPT_MAIL=$LETSENCRYPT_MAIL +USER_CONFIG_PATH=$USER_CONFIG_PATH +if [ "$USER_CONFIG_PATH" = "" ]; then + USER_CONFIG_PATH=/etc/user/config/user.json +fi + +DOCKER_REGISTRY_URL=$DOCKER_REGISTRY_URL + +if [ "$DOCKER_REGISTRY_URL" = "" ]; then + DOCKER_REGISTRY_URL=registry.format.hu +fi if [[ "$PUBLIC_PROXY" == "YES" || "$PUBLIC_PROXY" == "TRUE" ]]; then PROXY_TYPE=public-proxy; @@ -88,7 +99,7 @@ for i in $(echo $PROXY_TYPE); do # CHECK proxy config file exists SOURCE=$(cat /tmp/$i/proxy_config| tail -n+2 |head -n-2); TARGET=$(cat $PROXY_DIR/proxy.json | tail -n+2); - TMP_FILE=/tmp/proxy.json + TMP_FILE=$(mktemp -p /tmp/) { echo "{" echo $SOURCE @@ -108,6 +119,7 @@ for i in $(echo $PROXY_TYPE); do # formats json content and removes duplications jq -r . $TMP_FILE > $PROXY_DIR/proxy.json + rm $TMP_FILE if [ "$i" == "public-proxy" ]; then @@ -119,7 +131,39 @@ for i in $(echo $PROXY_TYPE); do fi if [ "$i" == "smarthost-proxy" ]; then - + + # SETUP LETSENCRYPT USER SPECIFIED CONFIGURATION + + if [ "$LETSENCRYPT_MAIL" = "" ]; then + echo "No email address given, Let's Encrypt will not work properly." + else + TMP_FILE=$(mktemp -p /tmp/) + LETS_CONTENT=$(echo '"letsencrypt": {"EMAIL": "'$LETSENCRYPT_MAIL'","DOCKER_REGISTRY_URL": "'$DOCKER_REGISTRY_URL'"'}); + + if [[ -f $USER_CONFIG_PATH ]]; then + TARGET=$(cat $USER_CONFIG_PATH | head -n-2); + { + echo $TARGET + echo "}," + echo $LETS_CONTENT + echo "}" + } >> "$TMP_FILE"; + else + { + echo "{" + echo $LETS_CONTENT + echo "}" + } >> "$TMP_FILE"; + fi + + # formats json content and removes duplications + jq -r . $TMP_FILE > $USER_CONFIG_PATH + rm $TMP_FILE + + fi + + + # SETUP PROXY DNS SERVICE # COPY PROXY DNS FILES if [ "$PROXY_DNS" == "" ]; then PROXY_DNS=proxy-dns