Skip to content

Commit 5d6b1f6

Browse files
committed
fix: reorder deletion of TriggerTask to ensure triggers are deployed correctly
1 parent 6ce3def commit 5d6b1f6

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

apps/tools/serializers/tool.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -545,15 +545,16 @@ def delete(self):
545545
QuerySet(Tool).filter(id=self.data.get('id')).delete()
546546
ResourceMapping.objects.filter(target_id=self.data.get('id')).delete()
547547
QuerySet(ToolRecord).filter(tool_id=self.data.get('id')).delete()
548-
trigger_ids = QuerySet(TriggerTask).filter(
549-
source_type="TOOL", source_id=self.data.get('id')
550-
).values('trigger_id')
548+
trigger_ids = list(
549+
QuerySet(TriggerTask).filter(
550+
source_type="TOOL", source_id=self.data.get('id')
551+
).values('trigger_id').distinct()
552+
)
553+
QuerySet(TriggerTask).filter(source_type="TOOL", source_id=self.data.get('id')).delete()
551554
for trigger_id in trigger_ids:
552555
trigger = Trigger.objects.filter(id=trigger_id['trigger_id']).first()
553556
if trigger and trigger.is_active:
554557
deploy(TriggerModelSerializer(trigger).data, **{})
555-
QuerySet(TriggerTask).filter(source_type="TOOL", source_id=self.data.get('id')).delete()
556-
557558

558559
def one(self):
559560
self.is_one_valid(raise_exception=True)

0 commit comments

Comments
 (0)