nova/nova/virt/libvirt
melanie witt aaf37a26d6 Refine waiting for vif plug events during _hard_reboot
In change Ib0cf5d55750f13d0499a570f14024dca551ed4d4, we stopped waiting
for vif plug events during hard reboot and start, because the behavior
of neutron plug events depended on the vif type and we couldn't rely on
the stale network info cache.

This refines the logic not to wait for vif plug events only for the
bridge vif type, instead of for all types. We also add a flag to
_create_domain_and_network to indicate that we're in the middle of a
reboot and to expect to wait for plug events for all vif types except
the bridge vif type, regardless of the vif's 'active' status.

We only query network_info from neutron at the beginning of a reboot,
before we've unplugged anything, so the majority of the time, the vifs
will be active=True. The current logic in get_neutron_events will only
expect events for vifs with 'active' status False. This adds a way to
override that if we know we've already unplugged vifs as part of a
reboot.

Related-Bug: #1744361

Change-Id: Ib08afad3822f2ca95cfeea18d7f4fc4cb407b4d6
2018-02-09 02:12:19 +00:00
..
storage Move shred to privsep. 2017-10-23 09:36:28 +11:00
volume libvirt: fix native luks encryption failure to find volume_id 2018-02-02 15:00:30 -05:00
__init__.py Remove vi modelines 2014-02-03 14:19:44 +00:00
blockinfo.py Rename block_device_info_get_root 2018-01-11 20:46:13 +00:00
compat.py Remove translation of log messages 2017-06-13 11:20:28 +07:00
config.py Make sure that we have usable input for graphical console 2018-02-06 10:31:19 +01:00
designer.py libvirt: conditionally set script path for ethernet vif types 2017-03-21 14:12:39 -04:00
driver.py Refine waiting for vif plug events during _hard_reboot 2018-02-09 02:12:19 +00:00
firewall.py Replaces uuid.uuid4 with uuidutils.generate_uuid() 2017-07-25 10:45:03 +05:30
guest.py Remove unnecessary execute permissions in files 2018-01-15 23:53:01 +09:00
host.py Encode libvirt domain XML in UTF-8 2018-02-08 15:45:59 -05:00
imagebackend.py Move ploop commands to privsep. 2017-09-28 07:29:51 +10:00
imagecache.py Move the dac_admin privsep code to a new location. 2017-09-18 23:14:11 +10:00
instancejobtracker.py Remove translation of log messages 2017-06-13 11:20:28 +07:00
migration.py libvirt: QEMU native LUKS decryption for encrypted volumes 2018-01-23 10:47:05 +00:00
utils.py Move the idmapshift binary into privsep. 2017-10-24 18:50:23 +11:00
vif.py Move contrail vif plugging to privsep. 2017-11-02 12:09:27 +11:00