51 lines
1.2 KiB
Bash
51 lines
1.2 KiB
Bash
#!/usr/bin/env sh
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
|
|
URL_BASE="${URL_BASE:-}"
|
|
|
|
if [ ! -f /var/lib/radarr/config.xml ]; then
|
|
echo '<Config/>' > /var/lib/radarr/config.xml
|
|
fi
|
|
|
|
set_config_value() {
|
|
name="$1"
|
|
value="$2"
|
|
|
|
CONFIG_FILE="/var/lib/radarr/config.xml"
|
|
|
|
if xmlstarlet sel -t -v "/Config/$name" "$CONFIG_FILE" >/dev/null 2>&1; then
|
|
xmlstarlet ed -L -u "/Config/$name" -v "$value" "$CONFIG_FILE"
|
|
else
|
|
xmlstarlet ed -L -s "/Config" -t elem -n "$name" -v "$value" "$CONFIG_FILE"
|
|
fi
|
|
}
|
|
|
|
set_config_value "LaunchBrowser" "False"
|
|
set_config_value "ApiKey" "$API_KEY"
|
|
set_config_value "AuthenticationMethod" "External"
|
|
set_config_value "AuthenticationRequired" "DisabledForLocalAddresses"
|
|
set_config_value "LogLevel" "info"
|
|
set_config_value "UrlBase" "$URL_BASE"
|
|
set_config_value "InstanceName" "${INSTANCE_NAME:-Radarr}"
|
|
set_config_value "AnalyticsEnabled" "False"
|
|
|
|
Radarr -data=/var/lib/radarr -nobrowser "$@" &
|
|
PID=$!
|
|
|
|
HOST="http://localhost:7878$URL_BASE"
|
|
|
|
curl -sf --retry 10 --retry-connrefused \
|
|
-H "X-Api-Key: $API_KEY" \
|
|
"$HOST/api/v1/health"
|
|
|
|
if [ -f /etc/radarr/setup.sh ]; then
|
|
# shellcheck disable=SC1091
|
|
. /etc/radarr/setup.sh
|
|
fi
|
|
|
|
trap 'kill -INT "$PID"' INT TERM
|
|
wait "$PID"
|
|
exit $?
|