diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2012-04-03 14:54:55 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2012-04-03 14:54:55 +0000 |
commit | b618c3d0693aec564c6746238fd05d94e31d3b76 (patch) | |
tree | 4a4834f3097bba25dba1adeba4324080c1b4bf7b /community-testing/libvirt/libvirtd-guests.rc.d | |
parent | 8cb5196780766f47b595410eed8ddbee2e8add08 (diff) |
Tue Apr 3 14:54:45 UTC 2012
Diffstat (limited to 'community-testing/libvirt/libvirtd-guests.rc.d')
-rw-r--r-- | community-testing/libvirt/libvirtd-guests.rc.d | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/community-testing/libvirt/libvirtd-guests.rc.d b/community-testing/libvirt/libvirtd-guests.rc.d deleted file mode 100644 index b4331964a..000000000 --- a/community-testing/libvirt/libvirtd-guests.rc.d +++ /dev/null @@ -1,107 +0,0 @@ -#!/bin/bash - -. /etc/conf.d/libvirtd-guests -. /etc/rc.conf -. /etc/rc.d/functions - -LIBVIRTD_LISTFILE="/var/state/libvirtd/vm-list" - -# get guest state by name -libvirt_get_guest_state() -{ - virsh $LIBVIRTD_URI dominfo "$1" | grep -E '^State:' | awk '{print $2}' -} - -# list IDs of running guests -libvirt_list() -{ - virsh $LIBVIRTD_URI list | awk 'NR > 2 {print $2}' -} - -# suspend guest by name -libvirt_suspend() -{ - virsh $LIBVIRTD_URI $LIBVIRTD_BYPASS_CACHE managedsave "$1" >/dev/null - timeout=$LIBVIRTD_SHUTDOWN_TIMEOUT - while [ "$timeout" -gt 0 ]; do - sleep 1 - timeout=$((timeout - 1)) - state=`libvirt_get_guest_state "$1"` - [ "x$state" == "xshut" ] && return 0 - done - return 1 -} - -# shutdown guest by name -libvirt_shutdown() -{ - virsh $LIBVIRTD_URI shutdown "$1" >/dev/null - timeout=$LIBVIRTD_SHUTDOWN_TIMEOUT - while [ "$timeout" -gt 0 ]; do - sleep 1 - timeout=$((timeout - 1)) - state=`libvirt_get_guest_state "$1"` - [ "x$state" != "xshut" ] && return 0 - done - return 1 -} - -# start guest by name -libvirt_start() -{ - virsh $LIBVIRTD_URI $LIBVIRTD_BYPASS_CACHE start "$1" >/dev/null -} - -# stop all guests -libvirt_stop_all() -{ - mkdir -p `dirname $LIBVIRTD_LISTFILE` - echo -n >$LIBVIRTD_LISTFILE - for i in `libvirt_list`; do - if [ "x$LIBVIRTD_STOP_ACTION" == "xsuspend" ]; then - stat_busy "Suspending libvirtd/$i guest" - libvirt_suspend "$i" - else - stat_busy "Shutting libvirtd/$i guest down" - libvirt_shutdown "$i" - fi - [ $? -eq 0 ] && stat_done || stat_fail - echo $i >>$LIBVIRTD_LISTFILE - done -} - -# start all guests -libvirt_start_all() -{ - if [ -f $LIBVIRTD_LISTFILE ]; then - for i in `cat $LIBVIRTD_LISTFILE`; do - stat_busy "Starting/resuming libvirtd/$i guest" - libvirt_start "$i" - [ $? -eq 0 ] && { sleep $LIBVIRTD_START_DELAY; stat_done; } || stat_fail - done - fi - rm -f $LIBVIRTD_LISTFILE -} - -# main -LC_ALL=C -LANG=C -case "$1" in - start) - libvirt_start_all - add_daemon libvirtd-guests - ;; - stop) - libvirt_stop_all - rm_daemon libvirtd-guests - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo $"Usage: $0 {start|stop|restart}" - ;; -esac -exit 0 |