This branch makes sure to detach fixed ips when their associated floating ip is deallocated from a project/tenant.
This commit is contained in:
commit
4b31654297
2
.mailmap
2
.mailmap
@ -18,6 +18,8 @@
|
||||
<devin.carlen@gmail.com> <devcamcar@illian.local>
|
||||
<ewan.mellor@citrix.com> <emellor@silver>
|
||||
<itoumsn@nttdata.co.jp> <itoumsn@shayol>
|
||||
<jake@ansolabs.com> <jake@markupisart.com>
|
||||
<jake@ansolabs.com> <admin@jakedahn.com>
|
||||
<jaypipes@gmail.com> <jpipes@serialcoder>
|
||||
<jmckenty@gmail.com> <jmckenty@joshua-mckentys-macbook-pro.local>
|
||||
<jmckenty@gmail.com> <jmckenty@yyj-dhcp171.corp.flock.com>
|
||||
|
1
Authors
1
Authors
@ -37,6 +37,7 @@ Hisaharu Ishii <ishii.hisaharu@lab.ntt.co.jp>
|
||||
Hisaki Ohara <hisaki.ohara@intel.com>
|
||||
Ilya Alekseyev <ilyaalekseyev@acm.org>
|
||||
Isaku Yamahata <yamahata@valinux.co.jp>
|
||||
Jake Dahn <jake@ansolabs.com>
|
||||
Jason Cannavale <jason.cannavale@rackspace.com>
|
||||
Jason Koelker <jason@koelker.net>
|
||||
Jay Pipes <jaypipes@gmail.com>
|
||||
|
@ -18,12 +18,16 @@
|
||||
from webob import exc
|
||||
|
||||
from nova import exception
|
||||
from nova import log as logging
|
||||
from nova import network
|
||||
from nova import rpc
|
||||
from nova.api.openstack import faults
|
||||
from nova.api.openstack import extensions
|
||||
|
||||
|
||||
LOG = logging.getLogger('nova.api.openstack.contrib.floating_ips')
|
||||
|
||||
|
||||
def _translate_floating_ip_view(floating_ip):
|
||||
result = {'id': floating_ip['id'],
|
||||
'ip': floating_ip['address']}
|
||||
@ -97,8 +101,14 @@ class FloatingIPController(object):
|
||||
|
||||
def delete(self, req, id):
|
||||
context = req.environ['nova.context']
|
||||
|
||||
ip = self.network_api.get_floating_ip(context, id)
|
||||
|
||||
if 'fixed_ip' in ip:
|
||||
try:
|
||||
self.disassociate(req, id, '')
|
||||
except Exception as e:
|
||||
LOG.exception(_("Error disassociating fixed_ip %s"), e)
|
||||
|
||||
self.network_api.release_floating_ip(context, address=ip)
|
||||
|
||||
return {'released': {
|
||||
|
Loading…
Reference in New Issue
Block a user