#!/usr/bin/env bash
set -euo pipefail
TARGET="nfs://192.168.20.40:/srv/longhorn-backup-staging"
echo '--- patch longhorn backup target ---'
sudo -n /usr/local/bin/kubectl -n longhorn-system patch backuptarget default --type=merge -p "{\"spec\":{\"backupTargetURL\":\"${TARGET}\",\"credentialSecret\":\"\"}}"
sudo -n /usr/local/bin/kubectl -n longhorn-system patch settings.longhorn.io backup-target --type=merge -p "{\"value\":\"${TARGET}\"}" || true

echo '--- wait status ---'
for i in $(seq 1 24); do
  echo "check ${i}"
  sudo -n /usr/local/bin/kubectl -n longhorn-system get backuptarget default -o jsonpath='url={.spec.backupTargetURL} available={.status.available} owner={.status.ownerID} msg={.status.conditions[*].message}{"\n"}' || true
  available=$(sudo -n /usr/local/bin/kubectl -n longhorn-system get backuptarget default -o jsonpath='{.status.available}' 2>/dev/null || true)
  [ "${available}" = "true" ] && break
  sleep 5
done

echo '--- final yaml excerpt ---'
sudo -n /usr/local/bin/kubectl -n longhorn-system get backuptarget default -o yaml | sed -n '1,180p'
