def delete(self, request, project_id, key): """ Remove all occurances of the given tag key. {method} {path} """ project = Project.objects.get( id=project_id, ) tagkey = TagKey.objects.get( project=project, key=key, ) assert_perm(tagkey, request.user, request.auth) updated = TagKey.objects.filter( id=tagkey.id, status=TagKeyStatus.VISIBLE, ).update(status=TagKeyStatus.PENDING_DELETION) if updated: delete_tag_key.delay(object_id=tagkey.id) AuditLogEntry.objects.create( organization=project.organization, actor=request.user, ip_address=request.META['REMOTE_ADDR'], target_object=tagkey.id, event=AuditLogEntryEvent.TAGKEY_REMOVE, data=tagkey.get_audit_log_data(), ) return Response(status=204)
def delete(self, request, project, key): """ Remove all occurances of the given tag key. {method} {path} """ try: tagkey = TagKey.objects.get( project=project, key=key, ) except TagKey.DoesNotExist: raise ResourceDoesNotExist updated = TagKey.objects.filter( id=tagkey.id, status=TagKeyStatus.VISIBLE, ).update(status=TagKeyStatus.PENDING_DELETION) if updated: delete_tag_key.delay(object_id=tagkey.id) AuditLogEntry.objects.create( organization=project.organization, actor=request.user, ip_address=request.META['REMOTE_ADDR'], target_object=tagkey.id, event=AuditLogEntryEvent.TAGKEY_REMOVE, data=tagkey.get_audit_log_data(), ) return Response(status=204)
def delete(self, request, project, key): """ Remove all occurances of the given tag key. {method} {path} """ try: tagkey = TagKey.objects.get( project=project, key=key, ) except TagKey.DoesNotExist: raise ResourceDoesNotExist updated = TagKey.objects.filter( id=tagkey.id, status=TagKeyStatus.VISIBLE, ).update(status=TagKeyStatus.PENDING_DELETION) if updated: delete_tag_key.delay(object_id=tagkey.id) self.create_audit_entry( request=request, organization=project.organization, target_object=tagkey.id, event=AuditLogEntryEvent.TAGKEY_REMOVE, data=tagkey.get_audit_log_data(), ) return Response(status=204)
def delete(self, request, project_id, key): """ Remove all occurances of the given tag key. {method} {path} """ project = Project.objects.get(id=project_id, ) tagkey = TagKey.objects.get( project=project, key=key, ) assert_perm(tagkey, request.user, request.auth) if tagkey.status == TagKeyStatus.VISIBLE: tagkey.update(status=TagKeyStatus.PENDING_DELETION) delete_tag_key.delay(object_id=tagkey.id) AuditLogEntry.objects.create( organization=project.organization, actor=request.user, ip_address=request.META['REMOTE_ADDR'], target_object=tagkey.id, event=AuditLogEntryEvent.TAGKEY_REMOVE, data=tagkey.get_audit_log_data(), ) return Response(status=204)
def delete_tag_key(self, project_id, key): tagkey = self.get_tag_key(project_id, key, status=None) updated = TagKey.objects.filter( id=tagkey.id, status=TagKeyStatus.VISIBLE, ).update(status=TagKeyStatus.PENDING_DELETION) if updated: delete_tag_key.delay(object_id=tagkey.id) return (updated, tagkey)
def delete(self, request, project, key): """ Remove all occurrences of the given tag key. {method} {path} """ if key in ('release', 'user', 'filename', 'function'): lookup_key = 'sentry:{0}'.format(key) else: lookup_key = key try: tagkey = TagKey.objects.get( project=project, key=lookup_key, ) except TagKey.DoesNotExist: raise ResourceDoesNotExist updated = TagKey.objects.filter( id=tagkey.id, status=TagKeyStatus.VISIBLE, ).update(status=TagKeyStatus.PENDING_DELETION) if updated: delete_tag_key.delay(object_id=tagkey.id) self.create_audit_entry( request=request, organization=project.organization, target_object=tagkey.id, event=AuditLogEntryEvent.TAGKEY_REMOVE, data=tagkey.get_audit_log_data(), ) return Response(status=204)