← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1818661] [NEW] ipv6 static routes dropped when rendering opensuse files

 

Public bug reported:

Ipv6 static routes seem dropped during opensuse file generation

The reason of this:

The destination file path is the same for ipv4 and ipv6 routes, for
opensuse

opensuse.py:

'route_templates': {
                'ipv4': '%(base)s/network/ifroute-%(name)s',
                'ipv6': '%(base)s/network/ifroute-%(name)s',
            }

but from sysconfig.py:

def _render_sysconfig
[...]
when rendering routes:
if cpath not in contents:
    contents[cpath] = iface_cfg.routes.to_string(proto)

So ipv6 routes get skipped (ipv4 has already taken the ifroute slot in
contents dict)

By the way this seems directly visible in the unittests:

test_net:TestOpenSuseSysConfigRendering.test_bond_config

-> see NETWORK_CONFIGS['bond']['expected_sysconfig_opensuse']['ifroute-
bond0']

** Affects: cloud-init
     Importance: Undecided
         Status: New

** Description changed:

  Ipv6 static routes seem dropped during opensuse file generation
  
  The reason of this:
  
  The destination file path is the same for ipv4 and ipv6 routes, for
  opensuse
  
  opensuse.py:
  
  'route_templates': {
-                 'ipv4': '%(base)s/network/ifroute-%(name)s',
-                 'ipv6': '%(base)s/network/ifroute-%(name)s',
-             }
+                 'ipv4': '%(base)s/network/ifroute-%(name)s',
+                 'ipv6': '%(base)s/network/ifroute-%(name)s',
+             }
  
  but from sysconfig.py:
  
  def _render_sysconfig
  [...]
  when rendering routes:
  if cpath not in contents:
-     contents[cpath] = iface_cfg.routes.to_string(proto)
+     contents[cpath] = iface_cfg.routes.to_string(proto)
  
- So ipv6 routes get dropped
+ So ipv6 routes get skipped (ipv4 has already taken the ifroute slot in
+ contents dict)
  
  By the way this seems directly visible in the unittests:
  
  test_net:TestOpenSuseSysConfigRendering.test_bond_config
  
  -> see NETWORK_CONFIGS['bond']['expected_sysconfig_opensuse']['ifroute-
  bond0']

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1818661

Title:
  ipv6 static routes dropped when rendering opensuse files

Status in cloud-init:
  New

Bug description:
  Ipv6 static routes seem dropped during opensuse file generation

  The reason of this:

  The destination file path is the same for ipv4 and ipv6 routes, for
  opensuse

  opensuse.py:

  'route_templates': {
                  'ipv4': '%(base)s/network/ifroute-%(name)s',
                  'ipv6': '%(base)s/network/ifroute-%(name)s',
              }

  but from sysconfig.py:

  def _render_sysconfig
  [...]
  when rendering routes:
  if cpath not in contents:
      contents[cpath] = iface_cfg.routes.to_string(proto)

  So ipv6 routes get skipped (ipv4 has already taken the ifroute slot in
  contents dict)

  By the way this seems directly visible in the unittests:

  test_net:TestOpenSuseSysConfigRendering.test_bond_config

  -> see NETWORK_CONFIGS['bond']['expected_sysconfig_opensuse
  ']['ifroute-bond0']

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1818661/+subscriptions


Follow ups