Fix EIP template.
Some of the implemented flags were wrong. Allow the eip to be deleted when no eip was created. Change-Id: Id1d3aaff9adf0988a5c58f8bf0f7b2fb9c7bde44 Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
This commit is contained in:
parent
e30ee55ff9
commit
2eadedf5fd
@ -17,6 +17,7 @@ import logging
|
|||||||
|
|
||||||
from heat.common import exception
|
from heat.common import exception
|
||||||
from heat.engine.resources import Resource
|
from heat.engine.resources import Resource
|
||||||
|
from novaclient.exceptions import NotFound
|
||||||
|
|
||||||
logger = logging.getLogger('heat.engine.eip')
|
logger = logging.getLogger('heat.engine.eip')
|
||||||
|
|
||||||
@ -104,5 +105,9 @@ class ElasticIpAssociation(Resource):
|
|||||||
|
|
||||||
def handle_delete(self):
|
def handle_delete(self):
|
||||||
"""Remove a floating IP address from a server."""
|
"""Remove a floating IP address from a server."""
|
||||||
|
try:
|
||||||
server = self.nova().servers.get(self.properties['InstanceId'])
|
server = self.nova().servers.get(self.properties['InstanceId'])
|
||||||
|
if server:
|
||||||
server.remove_floating_ip(self.properties['EIP'])
|
server.remove_floating_ip(self.properties['EIP'])
|
||||||
|
except NotFound as ex:
|
||||||
|
pass
|
||||||
|
@ -91,8 +91,7 @@ class Instance(Resource):
|
|||||||
'Implemented': False},
|
'Implemented': False},
|
||||||
'RamDiskId': {'Type': 'String',
|
'RamDiskId': {'Type': 'String',
|
||||||
'Implemented': False},
|
'Implemented': False},
|
||||||
'SecurityGroups': {'Type': 'List',
|
'SecurityGroups': {'Type': 'List'},
|
||||||
'Implemented': False},
|
|
||||||
'SecurityGroupIds': {'Type': 'List',
|
'SecurityGroupIds': {'Type': 'List',
|
||||||
'Implemented': False},
|
'Implemented': False},
|
||||||
'SourceDestCheck': {'Type': 'Boolean',
|
'SourceDestCheck': {'Type': 'Boolean',
|
||||||
|
@ -27,9 +27,9 @@ class SecurityGroup(Resource):
|
|||||||
'Required': True},
|
'Required': True},
|
||||||
'VpcId': {'Type': 'String',
|
'VpcId': {'Type': 'String',
|
||||||
'Implemented': False},
|
'Implemented': False},
|
||||||
'SecurityGroupIngress': {'Type': 'List',
|
'SecurityGroupIngress': {'Type': 'List'},
|
||||||
'Implemented': False},
|
'SecurityGroupEgress': {'Type': 'List',
|
||||||
'SecurityGroupEgress': {'Type': 'List'}}
|
'Implemented': False}}
|
||||||
|
|
||||||
def __init__(self, name, json_snippet, stack):
|
def __init__(self, name, json_snippet, stack):
|
||||||
super(SecurityGroup, self).__init__(name, json_snippet, stack)
|
super(SecurityGroup, self).__init__(name, json_snippet, stack)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user