From c6dca58011218c1b41fa140dcdc8f52ae10dcf81 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 10 Apr 2026 17:45:32 +0530 Subject: [PATCH] fix: run pipeline scheduling jobs in respective queues - Instead of running all scheduling jobs in default queue, use each pipeline's assigned queue for scheduling. Signed-off-by: Keshav Priyadarshi --- vulnerabilities/models.py | 6 +++++- vulnerabilities/schedules.py | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/vulnerabilities/models.py b/vulnerabilities/models.py index a802f7011..497f35a69 100644 --- a/vulnerabilities/models.py +++ b/vulnerabilities/models.py @@ -2351,7 +2351,11 @@ def save(self, *args, **kwargs): if not self.pk: self.schedule_work_id = self.create_new_job(execute_now=True) elif self.pk and (existing := PipelineSchedule.objects.get(pk=self.pk)): - if existing.is_active != self.is_active or existing.run_interval != self.run_interval: + if ( + existing.is_active != self.is_active + or existing.run_interval != self.run_interval + or existing.run_priority != self.run_priority + ): self.schedule_work_id = self.create_new_job() self.full_clean() return super().save(*args, **kwargs) diff --git a/vulnerabilities/schedules.py b/vulnerabilities/schedules.py index 215129e10..27fb7e09a 100644 --- a/vulnerabilities/schedules.py +++ b/vulnerabilities/schedules.py @@ -24,6 +24,7 @@ def schedule_execution(pipeline_schedule, execute_now=False): Takes a `PackageSchedule` object as input and schedule a recurring job using `rq_scheduler` to execute the pipeline. """ + queue_name = pipeline_schedule.get_run_priority_display() first_execution = datetime.datetime.now(tz=datetime.timezone.utc) if not execute_now: first_execution = pipeline_schedule.next_run_date @@ -36,6 +37,7 @@ def schedule_execution(pipeline_schedule, execute_now=False): args=[pipeline_schedule.pipeline_id], interval=interval_in_seconds, repeat=None, + queue_name=queue_name, ) return job._id