diff options
| -rwxr-xr-x | kvmx-status | 19 | ||||
| -rwxr-xr-x | kvmx-supervise | 27 | 
2 files changed, 33 insertions, 13 deletions
diff --git a/kvmx-status b/kvmx-status index eabfed7..6a90997 100755 --- a/kvmx-status +++ b/kvmx-status @@ -18,10 +18,17 @@  # along with this program.  If not, see <http://www.gnu.org/licenses/>.  # -# Get instances -instances="`kvmx list`" +# Parameters +DIRNAME="`dirname $0`" -# Kill old instances -for vm in $instances; do -  kvmx status $vm -done +# Dispatch to kvmx-supervise +$DIRNAME/kvmx-supervise status + +# Old implementation +## Get instances +#instances="`kvmx list`" +# +## Kill old instances +#for vm in $instances; do +#  kvmx status $vm +#done diff --git a/kvmx-supervise b/kvmx-supervise index 72c2cdc..aa0002a 100755 --- a/kvmx-supervise +++ b/kvmx-supervise @@ -33,10 +33,13 @@ VERSION="`$APP_BASE/kvmx version`"  # Initialize  function __kvmx_supervise_initialize { -  if [ "`whoami`" != "root" ]; then -    echo "$BASENAME: needs root privileges" -    exit 1 -  fi +  #if [ "`whoami`" != "root" ]; then +  #  echo "$BASENAME: needs root privileges" +  #  exit 1 +  #fi + +  # Put startup code here +  true  }  # Display usage @@ -83,13 +86,23 @@ function kvmx_supervise_call {      exit 1    fi -  # Operate only with VMs configured with supervise_manage=1 +  # When running as root, operate only with VMs configured with supervise_manage=1    # Specify /bin/bash to avoid restricted shells like kvmx-shell -  supervise_manage="`su $user -s /bin/bash -c "kvmx config $vm supervise_manage"`" +  if [ "`whoami`" == "root" ]; then +    supervise_manage="`su $user -s /bin/bash -c "kvmx config $vm supervise_manage"`" +  else +    supervise_manage="1" +  fi    # Dispatch    if [ "$supervise_manage" == "1" ]; then -    su $user -s /bin/bash -c "kvmx ${params[0]} $vm ${params[@]:1}" +    if [ "`whoami`" == "root" ]; then +      su $user -s /bin/bash -c "kvmx ${params[0]} $vm ${params[@]:1}" +    else +      if [ "`whoami`" == "$user" ]; then +        kvmx ${params[0]} $vm ${params[@]:1} +      fi +    fi    fi  }  | 
