Updates docs for SR1 with final revision
[genesis.git] / fuel / prototypes / auto-deploy / examples / libvirt / tools / cleanup_example_vms.sh
1 #!/bin/bash
2 ##############################################################################
3 # Copyright (c) 2015 Ericsson AB and others.
4 # stefan.k.berg@ericsson.com
5 # jonas.bjurel@ericsson.com
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Apache License, Version 2.0
8 # which accompanies this distribution, and is available at
9 # http://www.apache.org/licenses/LICENSE-2.0
10 ##############################################################################
11
12
13 error_exit () {
14     echo "$@"
15     exit 1
16 }
17
18 topdir=$(cd $(dirname $(readlink -f $BASH_SOURCE)); cd ..; pwd)
19 netdir=$topdir/conf/networks
20 vmdir=$topdir/conf/vms
21
22 if [ ! -d $netdir ]; then
23   error_exit "No net directory $netdir"
24   exit 1
25 elif [ ! -d $vmdir ]; then
26   error_exit "No VM directory $vmdir"
27   exit 1
28 fi
29
30
31 if [ "`whoami`" != "root" ]; then
32   error_exit "You need be root to run this script"
33 fi
34
35 for vm in $vmdir/*
36 do
37     vmname=`basename $vm`
38     virsh dumpxml $vmname >/dev/null 2>&1
39     if [ $? -eq 0 ]; then
40         diskfile=`virsh dumpxml $vmname | grep "<source file=" | grep raw | \
41             sed "s/.*<source file='\(.*\)'.*/\1/"`
42         echo "Removing $vmname with disk $diskfile"
43         virsh destroy $vmname 2>/dev/null
44         virsh undefine $vmname
45         rm -f $diskfile
46     fi
47 done
48
49 for net in $netdir/*
50 do
51     netname=`basename $net`
52     virsh net-dumpxml $netname >/dev/null 2>&1
53     if [ $? -eq 0 ]; then
54         echo "Found net $netname, deleting"
55         virsh net-destroy $netname
56         virsh net-undefine $netname
57     fi
58 done