On Wed, Nov 11, 2009 at 07:48:41PM +0100, Ricardo Mendes wrote: > >>>import libvirt > >>>con=libvirt.open('xen:///') > >> libvirt.getVersion() > 7002 > >>>dom=con.defineXML('<domain type="xen"><name>rtiago_test2</name><clock offset="utc"/><vcpu>8</vcpu><on_poweroff>restart</on_poweroff><devices><disk device="disk" type="file"><source file="/images/SLC-4-x86.img"/><driver name="file"/><target bus="xen" dev="xvda1"/></disk><console tty="/dev/pts/2" type="pty"><source path="/dev/pts/2"/><target port="0"/></console></devices><on_crash>restart</on_crash><currentMemory>300000</currentMemory><memory>300000</memory><on_reboot>restart</on_reboot><os><kernel>/root/vmlinuz</kernel><initrd>/root/initrd.img</initrd><type>linux</type><root>/dev/xvda1 ro</root><cmdline>rtiago</cmdline></os></domain>') > > >>> dom.create() > >>>0 > > >>> dom.destroy() > >>> 0 > > >>> dom.create() > Traceback (most recent call last): > File "<stdin>", line 1, in ? > File "/usr/lib64/python2.4/site-packages/libvirt.py", line 287, in create > if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self) > libvirt.libvirtError: Unknown failure > > Every call to create will raise the same exception, It only works if I do a new connection to the > hypervisor. Is there an workaround?? It depends on what you are trying to do. If you have a persistent domain XML that you want to keep, define it once with defineXML and later get access to it with conn.lookupByName() or friends, create(), and finally destroy() it. Anyway, dom.destroy() makes the dom object useless as the name may suggest ;-) -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list