diff options
Diffstat (limited to 'os-plugins/plugins/xen/files/xen.examples/scripts/domain-lock')
-rwxr-xr-x | os-plugins/plugins/xen/files/xen.examples/scripts/domain-lock | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/os-plugins/plugins/xen/files/xen.examples/scripts/domain-lock b/os-plugins/plugins/xen/files/xen.examples/scripts/domain-lock deleted file mode 100755 index 268d0058..00000000 --- a/os-plugins/plugins/xen/files/xen.examples/scripts/domain-lock +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash - -basedir=$(dirname "$0") - -usage() { - echo "usage: domain-lock [-l|-u] -n <vm name> -i <vm uuid> -p <physical host> path" - echo "usage: domain-lock [-s] path" - echo "" - echo "-l lock" - echo "-u unlock" - echo "-s status (default)" - echo "-n Virtual Machine name" - echo "-i Virtual Machine Id or UUID" - echo "-p Virtual Machine Server (physical host) name" - echo "path A per-VM, unique location where external lock will be managed" - exit 1 -} - -remove_lock(){ - local path=$1/lock - local name=$2 - - pid=`ps -efwww | grep vm-monitor | grep $name | awk '{print $2}'` - if [ -n "$pid" ]; then - kill $pid - rm -f $path - fi -} - -get_status(){ - local path=$1/lock - [ -f $path ] || exit 1 - - rc=`flock -xn $path /bin/true` - cat $path - exit $rc -} - -mode="status" - -while getopts ":lusn:i:p:" opt; do - case $opt in - l ) - mode="lock" - ;; - u ) - mode="unlock" - ;; - s ) - mode="status" - ;; - p ) - vm_host=$OPTARG - ;; - n ) - vm_name=$OPTARG - ;; - i ) - vm_uuid=$OPTARG - ;; - \? ) - usage - ;; - esac -done - -shift $(($OPTIND - 1)) -vm_path=$1 - -case $mode in - lock ) - [ -z "$vm_path" ] || [ -z "$vm_name" ] || [ -z "$vm_uuid" ] || [ -z "$vm_host" ] && usage - $basedir/set-lock $vm_path $vm_name $vm_uuid $vm_host - ;; - unlock ) - [ -z "$vm_path" ] || [ -z "$vm_name" ] || [ -z "$vm_uuid" ] || [ -z "$vm_host" ] && usage - remove_lock $vm_path $vm_name $vm_uuid $vm_host - ;; - status ) - [ -z "$vm_path" ] && usage - get_status $vm_path - ;; -esac |