From 0ce3a240e695cef11c91db034aa3d0ef0acd3c54 Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Thu, 23 Jul 2015 16:02:44 -0400 Subject: [PATCH] on job template launch inherit variables in the following hierarchy (bottom up): * Job Launch Extra Vars * Job Template Survey (defaults) * Job Template Extra vars --- 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 ab86d35023..52b2ccd281 100644 --- a/awx/main/models/jobs.py +++ b/awx/main/models/jobs.py @@ -282,6 +282,19 @@ class JobTemplate(UnifiedJobTemplate, JobOptions): survey_element['variable'], survey_element['choices'])) return errors + + def _update_unified_job_kwargs(self, **kwargs): + # Overwrite job extra_vars with job template extra vars + extra_vars = self.extra_vars_dict + + # Overwrite with job template survey default vars + if self.survey_enabled and 'spec' in self.survey_spec: + for survey_element in self.survey_spec.get("spec", []): + if survey_element['default']: + extra_vars[survey_element['variable']] = survey_element['default'] + + kwargs['extra_vars'] = json.dumps(extra_vars) + return kwargs @property def cache_timeout_blocked(self):