#!/usr/bin/env bash
set -euo pipefail
umask 077
NAMESPACE=${NAMESPACE:-awx}; BACKUP_NAME=${BACKUP_NAME:-controller-backup}
DEST=${BACKUP_STATUS_DIR:-./backup-status}; install -d -m 0700 "$DEST"
kubectl -n "$NAMESPACE" apply -f awx-backup.yaml
while true; do
  kubectl -n "$NAMESPACE" get awxbackup "$BACKUP_NAME" -o yaml > "$DEST/$BACKUP_NAME.yaml.tmp"
  mv "$DEST/$BACKUP_NAME.yaml.tmp" "$DEST/$BACKUP_NAME.yaml"
  kubectl -n "$NAMESPACE" get awxbackup "$BACKUP_NAME" -o jsonpath='{.status.backupDirectory}' | grep -q . && break
  sleep 15
done
kubectl -n "$NAMESPACE" get pvc -o wide > "$DEST/pvcs.txt"
# Snapshot/export the operator backup PVC through the cluster's supported storage tool; encrypt off-host.
