From 54b21e58720ca27a720d1df96a9301fc3ed89738 Mon Sep 17 00:00:00 2001 From: Alan Rominger Date: Wed, 17 Aug 2022 08:53:27 -0400 Subject: [PATCH] Avoid dependency manager for jobs with no deps --- awx/main/models/jobs.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/awx/main/models/jobs.py b/awx/main/models/jobs.py index fa313dfc23..79366f27ad 100644 --- a/awx/main/models/jobs.py +++ b/awx/main/models/jobs.py @@ -600,6 +600,19 @@ class Job(UnifiedJob, JobOptions, SurveyJobMixin, JobNotificationMixin, TaskMana def get_ui_url(self): return urljoin(settings.TOWER_URL_BASE, "/#/jobs/playbook/{}".format(self.pk)) + def _set_default_dependencies_processed(self): + """ + This sets the initial value of dependencies_processed + and here we use this as a shortcut to avoid the DependencyManager for jobs that do not need it + """ + if (not self.project) or self.project.scm_update_on_launch: + self.dependencies_processed = False + elif (not self.inventory) or self.inventory.inventory_sources.filter(update_on_launch=True).exists(): + self.dependencies_processed = False + else: + # No dependencies to process + self.dependencies_processed = True + @property def event_class(self): if self.has_unpartitioned_events: