diff options
-rw-r--r-- | ChangeLog.md | 8 | ||||
-rwxr-xr-x | kvmx | 31 |
2 files changed, 27 insertions, 12 deletions
diff --git a/ChangeLog.md b/ChangeLog.md index 2560e6c..a95f824 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,5 +1,13 @@ # ChangeLog +## 0.4.1 - 2024-12-17 + +* Fixes the case when the virtual machine guest is registered under a + different name, other than the name of the project folder on + `__kvmx_initialize`. + +* Fixes VM name and folder logic handling on `kvmx_init`. + ## 0.4.0 - 2024-11-22 * Adds `kvmx sshdir` action, which SSH's to the guest and changes to a given @@ -19,7 +19,7 @@ # # Basic parameters -VERSION="0.4.0" +VERSION="0.4.1" BASENAME="`basename $0`" DIRNAME="`dirname $0`" ACTION="$1" @@ -106,7 +106,20 @@ function __kvmx_initialize { # Check if second argument is a VM name or option if [ -z "$2" ]; then - VM="$(basename `pwd`)" + CANDIDATE_DEST="`pwd`/kvmxfile" + CANDIDATE_SRC="`find $GLOBAL_USER_CONFIG_FOLDER -lname $CANDIDATE_DEST | head -1`" + + if [ ! -z "$CANDIDATE_SRC" ]; then + CANDIDATE_SRC="`basename $CANDIDATE_SRC`" + fi + + # This covers the case when the VM is configured with a different name then the folder name + if [ ! -z "$CANDIDATE_SRC" ] ; then + VM="$CANDIDATE_SRC" + else + VM="$(basename `pwd`)" + fi + SHIFTARGS="1" elif [ -e 'kvmxfile' ] && [ ! -e "$GLOBAL_USER_CONFIG_FOLDER/$2" ] && [ "$2" != "$(basename `pwd`)" ]; then VM="$(basename `pwd`)" @@ -1536,17 +1549,11 @@ function kvmx_upgrade { # Initializes a new guest function kvmx_init { - FOLDER="$1" - - if [ -z "$FOLDER" ]; then - if [ -z "$VM" ]; then - VM="$(basename `pwd`)" - FOLDER="$(dirname `pwd`)/$VM" - else - FOLDER="$(pwd)/$VM" - fi + if [ -z "$1" ]; then + VM="$(basename `pwd`)" + FOLDER="$(dirname `pwd`)/$VM" else - VM="$FOLDER" + VM="$1" if [ ! -z "$2" ]; then FOLDER="$2" |