Skip to content

Commit 7ed178f

Browse files
committed
Also rename saved state file when renaming VM
1 parent 2fe1dc0 commit 7ed178f

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

lib/vm-core

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -941,6 +941,7 @@ core::discard(){
941941
core::rename(){
942942
local _old="$1"
943943
local _new="$2"
944+
local _mv_failed
944945

945946
[ -z "${_old}" -o -z "${_new}" ] && util::usage
946947
util::check_name "${_new}" || util::err "invalid virtual machine name - '${_name}'"
@@ -963,6 +964,17 @@ core::rename(){
963964
# rename config file
964965
mv "${VM_DS_PATH}/${_new}/${_old}.conf" "${VM_DS_PATH}/${_new}/${_new}.conf" >/dev/null 2>&1
965966
[ $? -eq 0 ] || util::err "changed guest directory but failed to rename configuration file"
967+
968+
# rename saved vm state file
969+
_mv_failed=0
970+
(
971+
cd "${VM_DS_PATH}/${_new}" || exit 1
972+
find . -type f -depth 1 -name "${_old}.save*" | while read -r oldf; do
973+
newf="$(echo "${oldf}" | sed "s|${_old}|${_new}|" )"
974+
echo mv "${oldf} ${newf}" || _mv_failed=1
975+
done
976+
)
977+
[ "${_mv_failed}" -eq 0 ] || util::err "changed guest directory but failed to rename saved vm state file"
966978
}
967979

968980
# 'vm console'

0 commit comments

Comments
 (0)