Skip to content

Commit

Permalink
vm/adminvm: setup libvirt_domain property
Browse files Browse the repository at this point in the history
Since libvirt do provide object for dom0 too, return it here.
It's much easier than special-casing AdminVM everywhere. And in fact
sometimes it is actually useful (for example attaching devices from/to
dom0, adjusting memory).
  • Loading branch information
marmarek committed Jul 4, 2017
1 parent e5de8f4 commit 3721ae3
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions qubes/vm/adminvm.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ class AdminVM(qubes.vm.BaseVM):
default='00000000-0000-0000-0000-000000000000',
setter=qubes.property.forbidden)

def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)

self._libvirt_domain = None

def __str__(self):
return self.name

Expand All @@ -71,12 +76,14 @@ def xid(self):

@property
def libvirt_domain(self):
'''Always :py:obj:`None`.
'''Libvirt object for dom0.
.. seealso:
:py:attr:`qubes.vm.qubesvm.QubesVM.libvirt_domain`
'''
return None
if self._libvirt_domain is None:
self._libvirt_domain = self.app.vmm.libvirt_conn.lookupByID(0)
return self._libvirt_domain

@staticmethod
def is_running():
Expand Down

0 comments on commit 3721ae3

Please sign in to comment.