feat: implement logs untag_log_group

This commit is contained in:
Wayne Metcalfe 2019-09-26 20:20:53 +01:00
commit 9c66839f85
4 changed files with 37 additions and 1 deletions

View file

@ -240,6 +240,10 @@ class LogGroup:
else:
self.tags = tags
def untag(self, tags_to_remove):
if self.tags:
self.tags = {k: v for (k, v) in self.tags.items() if k not in tags_to_remove}
class LogsBackend(BaseBackend):
def __init__(self, region_name):
@ -343,5 +347,11 @@ class LogsBackend(BaseBackend):
log_group = self.groups[log_group_name]
log_group.tag(tags)
def untag_log_group(self, log_group_name, tags):
if log_group_name not in self.groups:
raise ResourceNotFoundException()
log_group = self.groups[log_group_name]
log_group.untag(tags)
logs_backends = {region.name: LogsBackend(region.name) for region in boto.logs.regions()}

View file

@ -147,3 +147,9 @@ class LogsResponse(BaseResponse):
tags = self._get_param('tags')
self.logs_backend.tag_log_group(log_group_name, tags)
return ''
def untag_log_group(self):
log_group_name = self._get_param('logGroupName')
tags = self._get_param('tags')
self.logs_backend.untag_log_group(log_group_name, tags)
return ''