diff --git a/awx/main/models/jobs.py b/awx/main/models/jobs.py index c233269ce9..5df339186b 100644 --- a/awx/main/models/jobs.py +++ b/awx/main/models/jobs.py @@ -746,9 +746,14 @@ class Job(UnifiedJob, JobOptions): Hides fields marked as passwords in survey. ''' if self.survey_passwords: - extra_vars = json.loads(self.extra_vars) - extra_vars.update(self.survey_passwords) - return json.dumps(extra_vars) + try: + extra_vars = json.loads(self.extra_vars) + for key, value in self.survey_passwords.items(): + if key in extra_vars: + extra_vars[key] = value + return json.dumps(extra_vars) + except ValueError: + pass else: return self.extra_vars