diff --git a/mypy-files.txt b/mypy-files.txt index af7de8841b91..687950f616f3 100644 --- a/mypy-files.txt +++ b/mypy-files.txt @@ -9,5 +9,6 @@ nova/virt/libvirt/machine_type_utils.py nova/virt/libvirt/__init__.py nova/virt/libvirt/driver.py nova/virt/libvirt/event.py +nova/virt/libvirt/guest.py nova/virt/libvirt/host.py nova/virt/libvirt/utils.py diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 747489aeeb62..2232b99ef255 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -6032,7 +6032,7 @@ class LibvirtDriver(driver.ComputeDriver): def _add_vtpm_device( self, - guest: libvirt_guest.Guest, + guest: vconfig.LibvirtConfigGuest, flavor: 'objects.Flavor', instance: 'objects.Instance', image_meta: 'objects.ImageMeta', @@ -6225,7 +6225,7 @@ class LibvirtDriver(driver.ComputeDriver): def _configure_guest_by_virt_type( self, - guest: libvirt_guest.Guest, + guest: vconfig.LibvirtConfigGuest, instance: 'objects.Instance', image_meta: 'objects.ImageMeta', flavor: 'objects.Flavor', @@ -6327,7 +6327,7 @@ class LibvirtDriver(driver.ComputeDriver): def _conf_non_lxc( self, - guest: libvirt_guest.Guest, + guest: vconfig.LibvirtConfigGuest, root_device_name: str, rescue: bool, instance: 'objects.Instance', @@ -7258,7 +7258,7 @@ class LibvirtDriver(driver.ComputeDriver): events = [] pause = bool(events) - guest: libvirt_guest.Guest = None + guest: ty.Optional[libvirt_guest.Guest] = None try: with self.virtapi.wait_for_instance_event( instance, events, deadline=timeout, @@ -7304,6 +7304,7 @@ class LibvirtDriver(driver.ComputeDriver): cleanup_instance_disks=cleanup_instance_disks) # Resume only if domain has been paused if pause: + assert guest is not None guest.resume() return guest diff --git a/nova/virt/libvirt/guest.py b/nova/virt/libvirt/guest.py index 0831010117e4..e87188f264a3 100644 --- a/nova/virt/libvirt/guest.py +++ b/nova/virt/libvirt/guest.py @@ -28,6 +28,7 @@ then used by all the other libvirt related classes """ import time +import typing as ty from lxml import etree from oslo_log import log as logging @@ -41,7 +42,11 @@ from nova.i18n import _ from nova.virt import hardware from nova.virt.libvirt import config as vconfig -libvirt = None + +if ty.TYPE_CHECKING: + import libvirt +else: + libvirt = None LOG = logging.getLogger(__name__)