Added remove_tags_from_resource for rds db and add_tags_to_resource for rds db.
This commit is contained in:
parent
33b62d871f
commit
10c0ffc2f2
3 changed files with 113 additions and 8 deletions
|
|
@ -248,6 +248,14 @@ class Database(object):
|
|||
def get_tags(self):
|
||||
return self.tags
|
||||
|
||||
def add_tags(self, tags):
|
||||
new_keys = [tag_set['Key'] for tag_set in tags]
|
||||
self.tags = [tag_set for tag_set in self.tags if tag_set['Key'] not in new_keys]
|
||||
self.tags.extend(tags)
|
||||
|
||||
def remove_tags(self, tag_keys):
|
||||
self.tags = [tag_set for tag_set in self.tags if tag_set['Key'] not in tag_keys]
|
||||
|
||||
|
||||
class SecurityGroup(object):
|
||||
def __init__(self, group_name, description):
|
||||
|
|
@ -602,6 +610,28 @@ class RDS2Backend(BaseBackend):
|
|||
raise RDSClientError('InvalidParameterValue',
|
||||
'Invalid resource name: {}'.format(arn))
|
||||
|
||||
def remove_tags_from_resource(self, arn, tag_keys):
|
||||
if self.arn_regex.match(arn):
|
||||
arn_breakdown = arn.split(':')
|
||||
db_instance_name = arn_breakdown[len(arn_breakdown)-1]
|
||||
if db_instance_name in self.databases:
|
||||
self.databases[db_instance_name].remove_tags(tag_keys)
|
||||
else:
|
||||
raise RDSClientError('InvalidParameterValue',
|
||||
'Invalid resource name: {}'.format(arn))
|
||||
|
||||
def add_tags_to_resource(self, arn, tags):
|
||||
if self.arn_regex.match(arn):
|
||||
arn_breakdown = arn.split(':')
|
||||
db_instance_name = arn_breakdown[len(arn_breakdown)-1]
|
||||
if db_instance_name in self.databases:
|
||||
return self.databases[db_instance_name].add_tags(tags)
|
||||
else:
|
||||
return []
|
||||
else:
|
||||
raise RDSClientError('InvalidParameterValue',
|
||||
'Invalid resource name: {}'.format(arn))
|
||||
|
||||
class OptionGroup(object):
|
||||
def __init__(self, name, engine_name, major_engine_version, description=None):
|
||||
self.engine_name = engine_name
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue