I am having some problems getting libvirt under python to work properly.
I can setup new domains by using the createLinux() function, but when I
attempt to use defineXML() it fails with no reason given other then
virDomainDefineXML() failed. I am using the same XML file for both
functions.
This is on a Ubuntu 7.04 server running python 2.5 libvirt 0.1.8 (from
the ubuntu universe repo).
Here is my test code:
import libvirt
import sys
import xml
import random
try:
conn = libvirt.open(None)
except Exception, e:
print e
if conn == None:
print 'Failed to open connection to the hypervisor'
sys.exit(1)
create = True
if create:
xmlfile = open('webserv.xml')
xmldesc = xmlfile.read()
xmlfile.close()
try:
#webserv = conn.createLinux(xmldesc, 0)
webserv = conn.defineXML(xmldesc)
except Exception, e:
print 'Failed to create webserv: %s' % e
sys.exit(1)
if webserv is None:
print 'whoops this shouldnt happen!'
conn.create(webserv)
try:
print Domain 0: id %d running %s % (webserv.ID(), webserv.OSType())
print webserv.info()
print webserv.XMLDesc(0)
except Exception, e:
print e
#webserv.shutdown()
And the XML file:
domain type='xen'
namewebserv/name
os
typelinux/type
kernel/boot/vmlinuz-2.6.19-4-generic-amd64/kernel
initrd/boot/initrd.img-2.6.19-4-generic-amd64/initrd
root/dev/hda1/root
/os
memory1024/memory
vcpu1/vcpu
on_poweroffdestroy/on_poweroff
on_rebootrestart/on_reboot
on_crashrestart/on_crash
devices
interface type='bridge'
source bridge='xenbr0'/
mac address='00:16:3e:24:27:a5'/
script path='vif-bridge'/
/interface
graphics type='vnc' port='5902'/
disk type='file' device='disk'
driver name='tap' type='aio'/
source file='/virtual/images/webserv/webserv.img'/
target dev='hda1'/
/disk
console tty='/dev/pts/4'/
/devices
/domain
Am I missing something simple, or is there a bug?
Thanks!
--
Libvir-list mailing list
Libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list