Skip to content
Snippets Groups Projects
Commit dd956189 authored by Will Szumski's avatar Will Szumski Committed by Pierre Riteau
Browse files

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
parent 678b915a
No related branches found
No related tags found
No related merge requests found
......@@ -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
......
---
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.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment