Resolve remote storage path from host*.conf for true cross-platform SSH support
detect_hosts() now sets REMOTE_STORAGE_PATH from HOST*_STORAGE_PATH in the remote's conf instead of calling platform_storage_path() locally. SSH commands that check the remote's storage (check_remote_array, check_remote_disks, check_both_healthy) use $REMOTE_STORAGE_PATH so they work correctly when the remote is a different platform with a different storage root.
This commit is contained in:
@@ -876,14 +876,13 @@ revoke_emby_admin() {
|
||||
check_both_healthy() {
|
||||
platform_storage_healthy || { error "Local array not healthy"; return 1; }
|
||||
|
||||
local mirror_ip _spath
|
||||
local mirror_ip
|
||||
mirror_ip=$(resolve_tailscale_ip "$MIRROR")
|
||||
[[ -z "$mirror_ip" ]] && { error "Cannot resolve $MIRROR Tailscale IP"; return 1; }
|
||||
_spath=$(platform_storage_path)
|
||||
|
||||
timeout "$SSH_TIMEOUT" ssh -i "$MIRROR_SSH_KEY" \
|
||||
-o ConnectTimeout="$SSH_TIMEOUT" root@"$mirror_ip" \
|
||||
"mountpoint -q '$_spath' && timeout 10 docker ps" >/dev/null 2>&1 || {
|
||||
"mountpoint -q '$REMOTE_STORAGE_PATH' && timeout 10 docker ps" >/dev/null 2>&1 || {
|
||||
error "Mirror $MIRROR not healthy"
|
||||
return 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user