mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-31 00:47:42 +01:00
Fix seafile env_vars export
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
|
||||
## 12.0.18 (2026-03-20)
|
||||
- Fix `env_vars` handling so extra environment variables are exported correctly.
|
||||
|
||||
## 12.0.17 (2026-03-12)
|
||||
- Ensure `SERVICE_URL` and `FILE_SERVER_ROOT` are written to the active Seafile config path.
|
||||
|
||||
|
||||
@@ -17,6 +17,9 @@ JSONSOURCE="/data/options.json"
|
||||
mapfile -t arr < <(jq -r 'keys[]' "${JSONSOURCE}")
|
||||
|
||||
for KEYS in "${arr[@]}"; do
|
||||
if [[ "${KEYS}" == "env_vars" ]]; then
|
||||
continue
|
||||
fi
|
||||
# export key
|
||||
VALUE=$(jq ."$KEYS" "${JSONSOURCE}")
|
||||
line="${KEYS}='${VALUE//[\"\']/}'"
|
||||
@@ -33,6 +36,32 @@ for KEYS in "${arr[@]}"; do
|
||||
find /opt/seafile -name '*.sh' -print0 | xargs -0 sed -i "1a export $line"
|
||||
done
|
||||
|
||||
#######################################
|
||||
# Apply extra environment variables #
|
||||
#######################################
|
||||
|
||||
if jq -e '.env_vars? | length > 0' "${JSONSOURCE}" >/dev/null; then
|
||||
bashio::log.info "Applying env_vars"
|
||||
while IFS=$'\t' read -r ENV_NAME ENV_VALUE; do
|
||||
if [[ -z "${ENV_NAME}" || "${ENV_NAME}" == "null" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
if bashio::config.false "verbose" || [[ "${ENV_NAME}" == *"PASS"* ]]; then
|
||||
bashio::log.blue "${ENV_NAME}=******"
|
||||
else
|
||||
bashio::log.blue "${ENV_NAME}=${ENV_VALUE}"
|
||||
fi
|
||||
|
||||
export "${ENV_NAME}=${ENV_VALUE}"
|
||||
|
||||
ENV_VALUE_ESCAPED=$(printf "%q" "${ENV_VALUE}")
|
||||
ENV_LINE="export ${ENV_NAME}=${ENV_VALUE_ESCAPED}"
|
||||
sed -i "1a ${ENV_LINE}" /home/seafile/*.sh 2>/dev/null
|
||||
find /opt/seafile -name '*.sh' -print0 | xargs -0 sed -i "1a ${ENV_LINE}"
|
||||
done < <(jq -r '.env_vars[] | [.name, .value] | @tsv' "${JSONSOURCE}")
|
||||
fi
|
||||
|
||||
#################
|
||||
# DATA_LOCATION #
|
||||
#################
|
||||
|
||||
Reference in New Issue
Block a user