mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-10-12 19:21:35 +02:00
fix(filebrowser_quantum): convert 1.x configs in place instead of resetting
Resetting to the v2 default dropped extra sources (breaking shares on them) and auth/OIDC settings. Both 1.x and 2.0 reject unknown keys, so the keys a 1.5.x config can hold that 2.0 lacks are exactly the settings-struct diff: move the server http keys under http and drop the removed ones. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -79,10 +79,19 @@ mkdir -p /var/log/nginx && touch /var/log/nginx/error.log
|
|||||||
|
|
||||||
mkdir -p /config /cache
|
mkdir -p /config /cache
|
||||||
|
|
||||||
# 1.x config (string server.database) has keys v2 rejects: back it up, use the v2 default
|
# 1.x config (string server.database): both versions reject unknown keys, so
|
||||||
|
# move or drop the keys 2.0 removed and keep everything else (users and shares
|
||||||
|
# are in the database, imported below)
|
||||||
if [ -f "$FILEBROWSER_CONFIG" ] && [ "$(yq e '.server.database | tag' "$FILEBROWSER_CONFIG")" = "!!str" ]; then
|
if [ -f "$FILEBROWSER_CONFIG" ] && [ "$(yq e '.server.database | tag' "$FILEBROWSER_CONFIG")" = "!!str" ]; then
|
||||||
bashio::log.warning "FileBrowser 1.x config saved to ${FILEBROWSER_CONFIG}.v1.bak, starting from the 2.0 default config"
|
bashio::log.warning "Converting FileBrowser 1.x config to 2.0, backup saved to ${FILEBROWSER_CONFIG}.v1.bak"
|
||||||
mv "$FILEBROWSER_CONFIG" "${FILEBROWSER_CONFIG}.v1.bak"
|
cp "$FILEBROWSER_CONFIG" "${FILEBROWSER_CONFIG}.v1.bak"
|
||||||
|
yq e -i '
|
||||||
|
.http = ((.http // {}) * (.server | pick(["socket", "tlsCert", "tlsKey", "externalUrl", "internalUrl", "disableWebDAV"]))) |
|
||||||
|
del(.server.port, .server.listen, .server.baseURL, .server.socket, .server.tlsCert, .server.tlsKey, .server.externalUrl, .server.internalUrl, .server.disableWebDAV) |
|
||||||
|
del(.http.trustedHeaders, .integrations.media.exiftoolPath, .userDefaults) |
|
||||||
|
del(.server.sources[].config.conditionals, .server.sources[].config.indexingIntervalMinutes) |
|
||||||
|
del(.server.sources[].config.rules[].fileNames, .server.sources[].config.rules[].folderNames)
|
||||||
|
' "$FILEBROWSER_CONFIG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Copy default config if not existing
|
# Copy default config if not existing
|
||||||
|
|||||||
Reference in New Issue
Block a user