#!/bin/bash
# Copia o qcow2 de boot ja tratado para o volume vazio anexado no helper. Rodar NO nfs01.
# uso: SUDOPW=... bash boot-3-para-volume.sh <caminho-do-qcow2> <ip-publico-helper> <dev-destino>
#  ex: SUDOPW=In0v@t3ch bash boot-3-para-volume.sh \
#        /NFS01/migrate/ENSAIO-KAMELL/KAMELL-boot.qcow2 177.85.38.88 /dev/vdb
set -eu
Q="${1:?caminho do qcow2}"; H="${2:?ip do helper}"; DEV="${3:?dev destino}"
: "${SUDOPW:?exporte SUDOPW}"
S() { echo "$SUDOPW" | sudo -S "$@"; }
[ -f "$Q" ] || { echo "ERRO: $Q nao existe"; exit 1; }
S qemu-img info "$Q" | head -3
S modprobe nbd max_part=8
S qemu-nbd -d /dev/nbd1 2>/dev/null || true
S qemu-nbd -r -c /dev/nbd1 "$Q"; sleep 4
t0=$SECONDS
S dd if=/dev/nbd1 bs=4M status=progress \
  | zstd -1 -T8 \
  | ssh -i /home/inovatech/.ssh/wci-dep -c aes128-gcm@openssh.com -o Compression=no \
        -o StrictHostKeyChecking=no ubuntu@"$H" "unzstd | sudo dd of=$DEV bs=4M conv=sparse"
echo "COPIA levou $((SECONDS-t0))s"
S qemu-nbd -d /dev/nbd1
ssh -i /home/inovatech/.ssh/wci-dep -o StrictHostKeyChecking=no ubuntu@"$H" "sudo partprobe $DEV 2>/dev/null; lsblk $DEV; sudo blkid ${DEV}*"
echo "=== FIM COPIA OK   (o dd le /dev/nbd1, NUNCA o .qcow2 direto)"
