diff --git a/hobo/provisionning/utils.py b/hobo/provisionning/utils.py index 96e7c13..713e841 100644 --- a/hobo/provisionning/utils.py +++ b/hobo/provisionning/utils.py @@ -196,8 +196,7 @@ class NotificationProcessing: logger.error(u'cannot provision role "%s" (%s)', o['name'], o['uuid']) continue if full and action == 'provision': - for role in Role.objects.exclude(uuid__in=uuids): - role.delete() + Role.objects.exclude(uuid__in=uuids).delete() elif action == 'deprovision': for role in Role.objects.filter(uuid__in=uuids): role.delete() diff --git a/tests_multitenant/test_hobo_notify.py b/tests_multitenant/test_hobo_notify.py index 9a38c23..de5bc2e 100644 --- a/tests_multitenant/test_hobo_notify.py +++ b/tests_multitenant/test_hobo_notify.py @@ -268,7 +268,7 @@ def test_hobo_notify_roles_db_queries(caplog, tenants): } with CaptureQueriesContext(connection) as ctx: Command.process_notification(tenant, notification) - assert len(ctx.captured_queries) == 45 + assert len(ctx.captured_queries) == 33 assert Group.objects.count() == 1 assert Role.objects.count() == 1