diff options
author | Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com> | 2018-06-18 12:30:55 +0200 |
---|---|---|
committer | Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com> | 2018-06-19 09:41:06 +0200 |
commit | c4ac6f6475fe7a6b7ebceba1a7af3ee6af5138fe (patch) | |
tree | 992e5884b095bfa790f433113389ecb8166a2767 /sdnvpn/lib/openstack_utils.py | |
parent | 3355eda6176c0a78b77143c9735c9a5c2a61d525 (diff) |
Use Neutron API for attaching floating ip address
The Nova API for attaching floating ip address with vm instance is
removed in latest Openstack release. Hence moving to neutron API for
attaching floating ip address with VM.
JIRA: SDNVPN-217
Change-Id: If321191eca0915cfd816eabc8890b28ed79cefc7
Signed-off-by: Periyasamy Palanisamy <periyasamy.palanisamy@ericsson.com>
Diffstat (limited to 'sdnvpn/lib/openstack_utils.py')
-rw-r--r-- | sdnvpn/lib/openstack_utils.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sdnvpn/lib/openstack_utils.py b/sdnvpn/lib/openstack_utils.py index a7ac80b..29843f0 100644 --- a/sdnvpn/lib/openstack_utils.py +++ b/sdnvpn/lib/openstack_utils.py @@ -539,6 +539,18 @@ def create_floating_ip(neutron_client): return {'fip_addr': fip_addr, 'fip_id': fip_id} +def attach_floating_ip(neutron_client, port_id): + extnet_id = get_external_net_id(neutron_client) + props = {'floating_network_id': extnet_id, + 'port_id': port_id} + try: + return neutron_client.create_floatingip({'floatingip': props}) + except Exception as e: + logger.error("Error [Attach_floating_ip(neutron_client), %s]: %s" + % (port_id, e)) + return None + + def add_floating_ip(nova_client, server_id, floatingip_addr): try: nova_client.servers.add_floating_ip(server_id, floatingip_addr) |