#!/bin/bash

set -eu
# __SILENT=TRUE
. /opt/fox_utils/crab_sys.sh
. /opt/fox_vz7/vz7_env \
	|| . /opt/fox_vz/vz_env
[ "${1:---help}" = "--help" ] && sys::usage "$@"
### --help Info: etner
### --help Usage: vz7_migrate_files_in $VM_NAME
### --help Example:
### sys::arg_parse "$@"

. /opt/fox_utils/fox_conf vm get "$1"

/opt/fox_utils/crab_conf set VM_DISK "/vz/private/$VM_UUID" "/opt/fox_conf/vm/$VM_NAME/vm.conf"
/opt/fox_utils/crab_conf set VEID "$VM_UUID" "/opt/fox_conf/vm/$VM_NAME/ct.conf"
/opt/fox_utils/crab_conf set UUID "$VM_UUID" "/opt/fox_conf/vm/$VM_NAME/ct.conf"


ln -fsn "/etc/vz/conf/${VM_UUID}.conf" "/opt/fox_conf/vm/$VM_NAME/ct.conf"
ln -fsn "/opt/fox_conf/vm/$VM_NAME" "/vz/private/$VM_UUID/conf"
(
	VEID="$VM_UUID"
	. "/etc/vz/conf/${VM_UUID}.conf"
	ln -fsn "$VE_ROOT" "/opt/fox_conf/vm/$VM_NAME/rootfs"
	ln -fsn "$VE_PRIVATE" "/opt/fox_conf/vm/$VM_NAME/disk"
)
vzctl set "$VM_UUID" --name="$VM_NAME" --hostname="${VM_HOSTNAME%% *}" --save
vm undefine "${VM_NAME}-NEW"
cat "${VM_DIR}/ct.conf" > "${VM_DIR}/ct.conf.gen"
/opt/fox_utils/crab_conf commit "/opt/fox_conf/vm/$VM_NAME/" "vz7_migrate_files_in"
vm compat "$VM_NAME"
cat "${VM_DIR}/ct.conf" > "${VM_DIR}/ct.conf.gen"
/opt/fox_utils/crab_conf commit "/opt/fox_conf/vm/$VM_NAME/" "vz7_migrate_files_in"

vm umount "$VM_NAME"

exit 0
