Use naming convention to infer VLAN tagging
Any interface not matching the convention: <interface>.<vlan id> will be assumed to untagged when generating the config drive. The link type will be set to `phy` in `network_data.json` instead of `vlan`. This prevents invalid config drive configuration from being generated. Change-Id: I00e7615581c7a214e0ee8e8f04cacdbb3ea4131a Story: 2009910 Task: 44736
This commit is contained in:
parent
678b915aff
commit
dd956189ed
@ -595,7 +595,7 @@ def net_configdrive_network_device(context, name, inventory_hostname=None):
|
||||
bootproto = net_bootproto(context, name, inventory_hostname)
|
||||
mtu = net_mtu(context, name, inventory_hostname)
|
||||
vlan = net_vlan(context, name, inventory_hostname)
|
||||
if vlan:
|
||||
if vlan and '.' in device:
|
||||
backend = [device.split('.')[0]]
|
||||
else:
|
||||
backend = None
|
||||
@ -608,7 +608,7 @@ def net_configdrive_network_device(context, name, inventory_hostname=None):
|
||||
'mtu': mtu,
|
||||
'backend': backend,
|
||||
}
|
||||
if vlan:
|
||||
if backend:
|
||||
interface['type'] = 'vlan'
|
||||
interface = {k: v for k, v in interface.items() if v is not None}
|
||||
return interface
|
||||
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
fixes:
|
||||
- |
|
||||
Fixes an issue with config drive generation for infrastructure and seed VMs
|
||||
when using untagged interfaces. The symptom of this issue is that kayobe
|
||||
cannot login to the instance. If you check the libvirt console log, you
|
||||
will see ``KeyError: 'vlan_link'``. See `story 2009910
|
||||
<https://storyboard.openstack.org/#!/story/2009910>`__ for details.
|
Loading…
Reference in New Issue
Block a user