diff options
author | Jenkins <jenkins@review.openstack.org> | 2015-10-21 19:37:03 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2015-10-21 19:37:03 +0000 |
commit | 7f10579c4a75e3055adbbce4ae8c9557f545dc8d (patch) | |
tree | 917536825236ceeb7f9bbedf6f76d4fa6ebda5af /os_net_config/impl_eni.py | |
parent | a7d9cc1129370f543ab05935bcff17896d09be70 (diff) | |
parent | eb39ca3268c805d5d57bdb224ab16c5bfb19857e (diff) |
Merge "Support multiple addresses assignment with eni"
Diffstat (limited to 'os_net_config/impl_eni.py')
-rw-r--r-- | os_net_config/impl_eni.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/os_net_config/impl_eni.py b/os_net_config/impl_eni.py index 7eb69f3..68d91ef 100644 --- a/os_net_config/impl_eni.py +++ b/os_net_config/impl_eni.py @@ -44,22 +44,27 @@ class ENINetConfig(os_net_config.NetConfig): self.bridges = {} logger.info('ENI net config provider created.') - def _add_common(self, interface, static_addr=None): + def _add_common(self, interface, static_addr=None, ip_version=4): ovs_extra = [] data = "" address_data = "" if static_addr: address_data += " address %s\n" % static_addr.ip - address_data += " netmask %s\n" % static_addr.netmask + if ip_version == 6: + address_data += " netmask %s\n" % static_addr.prefixlen + else: + address_data += " netmask %s\n" % static_addr.netmask else: v4_addresses = interface.v4_addresses() if v4_addresses: - data += self._add_common(interface, v4_addresses[0]) + for v4_address in v4_addresses: + data += self._add_common(interface, v4_address) v6_addresses = interface.v6_addresses() if v6_addresses: - data += self._add_common(interface, v6_addresses[0]) + for v6_address in v6_addresses: + data += self._add_common(interface, v6_address, 6) if data: return data |