summaryrefslogtreecommitdiffstats
path: root/examples/domsave.py
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2013-11-22 15:55:39 +0000
committerDaniel P. Berrange <berrange@redhat.com>2013-11-22 15:55:39 +0000
commit34aa32ba8a4d3373ce01f999021e58638c4c3324 (patch)
tree3bba26150dff600f9f1ca99a34e5397c4c786c66 /examples/domsave.py
parent70b8c9a2a3fe293aa055fde0d8a9df13263c3fd8 (diff)
downloadlibvirt-python-v9-34aa32ba8a4d3373ce01f999021e58638c4c3324.tar.gz
libvirt-python-v9-34aa32ba8a4d3373ce01f999021e58638c4c3324.tar.xz
libvirt-python-v9-34aa32ba8a4d3373ce01f999021e58638c4c3324.zip
Move python example programs into python/examples/ subdirectory
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Diffstat (limited to 'examples/domsave.py')
-rwxr-xr-xexamples/domsave.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/examples/domsave.py b/examples/domsave.py
new file mode 100755
index 0000000..bac4536
--- /dev/null
+++ b/examples/domsave.py
@@ -0,0 +1,40 @@
+#!/usr/bin/env python
+# domstart - make sure a given domU is running, if not start it
+
+import libvirt
+import sys
+import os
+import libxml2
+import pdb
+
+def usage():
+ print 'Usage: %s DIR' % sys.argv[0]
+ print ' Save all currently running domU\'s into DIR'
+ print ' DIR must exist and be writable by this process'
+
+if len(sys.argv) != 2:
+ usage()
+ sys.exit(2)
+
+dir = sys.argv[1]
+
+conn = libvirt.open(None)
+if conn is None:
+ print 'Failed to open connection to the hypervisor'
+ sys.exit(1)
+
+doms = conn.listDomainsID()
+for id in doms:
+ if id == 0:
+ continue
+ dom = conn.lookupByID(id)
+ print "Saving %s[%d] ... " % (dom.name(), id),
+ sys.stdout.flush()
+ path = os.path.join(dir, dom.name())
+ ret = dom.save(path)
+ if ret == 0:
+ print "done"
+ else:
+ print "error %d" % ret
+
+#pdb.set_trace()