diff --git a/docker/mjolnir/start.sh b/docker/mjolnir/start.sh index 3a1be89..0f62695 100644 --- a/docker/mjolnir/start.sh +++ b/docker/mjolnir/start.sh @@ -1,6 +1,5 @@ #!/bin/bash -# Update the DEFAULT_CONFIG_PATH to match the new download location CONFIG_PATH="/etc/mjolnir/config.yml" DEFAULT_CONFIG_PATH="/etc/mjolnir-defaults/default.yml" HOME_SERVER_URL="${HOME_SERVER_URL:-https://matrix.org}" @@ -13,37 +12,26 @@ SENTRY_DSN="${SENTRY_DSN:-}" SENTRY_TRACES_SAMPLE_RATE="${SENTRY_TRACES_SAMPLE_RATE:-0.5}" WEB_LISTEN_ADDRESS="${WEB_LISTEN_ADDRESS:-0.0.0.0}" -# Check if the default config file exists if [ ! -f "$DEFAULT_CONFIG_PATH" ]; then echo "Default config $DEFAULT_CONFIG_PATH not found. Exiting." exit 1 fi -# Check if the target config file exists, if not, create and configure it -if [ ! -f "$CONFIG_PATH" ]; then - # Ensure the /etc/mjolnir directory exists - mkdir -p /etc/mjolnir - cp $DEFAULT_CONFIG_PATH $CONFIG_PATH - - # Check if copy was successful - if [ ! -f "$CONFIG_PATH" ]; then - echo "Failed to create config file from default. Exiting." - exit 1 - fi +# Ensure the /etc/mjolnir directory exists +mkdir -p /etc/mjolnir - # Replace values in the config file - sed -i "s|homeserverUrl:.*|homeserverUrl: \"$HOME_SERVER_URL\"|g" $CONFIG_PATH - sed -i "s|rawHomeserverUrl:.*|rawHomeserverUrl: \"$RAW_HOME_SERVER_URL\"|g" $CONFIG_PATH - sed -i "s|accessToken:.*|accessToken: \"$ACCESS_TOKEN\"|g" $CONFIG_PATH - sed -i "s|use:.*|use: $PANTALAIMON_USE|g" $CONFIG_PATH - sed -i "s|username:.*|username: \"$PANTALAIMON_USERNAME\"|g" $CONFIG_PATH - sed -i "s|password:.*|password: \"$PANTALAIMON_PASSWORD\"|g" $CONFIG_PATH - sed -i "s|# dsn:.*|dsn: \"$SENTRY_DSN\"|g" $CONFIG_PATH - sed -i "s|# tracesSampleRate:.*|tracesSampleRate: $SENTRY_TRACES_SAMPLE_RATE|g" $CONFIG_PATH - sed -i "s|address:.*|address: \"$WEB_LISTEN_ADDRESS\"|g" $CONFIG_PATH -else - echo "Using existing config file at $CONFIG_PATH" -fi +# Always copy the default to config to ensure it's the latest before applying changes +cp $DEFAULT_CONFIG_PATH $CONFIG_PATH + +# Replace values in the config file +sed -i "s|homeserverUrl:.*|homeserverUrl: \"$HOME_SERVER_URL\"|" $CONFIG_PATH +sed -i "s|rawHomeserverUrl:.*|rawHomeserverUrl: \"$RAW_HOME_SERVER_URL\"|" $CONFIG_PATH +sed -i "s|accessToken:.*|accessToken: \"$ACCESS_TOKEN\"|" $CONFIG_PATH +sed -i "s|use: false|use: $PANTALAIMON_USE|" $CONFIG_PATH +sed -i "s|username:.*|username: \"$PANTALAIMON_USERNAME\"|" $CONFIG_PATH +sed -i "s|password:.*|password: \"$PANTALAIMON_PASSWORD\"|" $CONFIG_PATH +sed -i "/^#.*dsn:/s|# dsn:.*|dsn: \"$SENTRY_DSN\"|" $CONFIG_PATH +sed -i "/^#.*tracesSampleRate:/s|# tracesSampleRate:.*|tracesSampleRate: $SENTRY_TRACES_SAMPLE_RATE|" $CONFIG_PATH +sed -i "s|address:.*|address: \"$WEB_LISTEN_ADDRESS\"|" $CONFIG_PATH -# Start Mjolnir with the configured settings exec node /mjolnir/index.js --config $CONFIG_PATH