From 3e9bc3b3d4b59171161022ae9bbec2da0c50dfcf Mon Sep 17 00:00:00 2001 From: AlanCoding Date: Fri, 7 Apr 2017 11:41:27 -0400 Subject: [PATCH] Hide extra_vars in job notifications --- awx/main/models/jobs.py | 2 +- awx/main/tests/functional/test_jobs.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/awx/main/models/jobs.py b/awx/main/models/jobs.py index 388be47d17..a89123bac9 100644 --- a/awx/main/models/jobs.py +++ b/awx/main/models/jobs.py @@ -595,7 +595,7 @@ class Job(UnifiedJob, JobOptions, SurveyJobMixin, JobNotificationMixin): playbook=self.playbook, credential=self.credential.name if self.credential else None, limit=self.limit, - extra_vars=self.extra_vars, + extra_vars=self.display_extra_vars(), hosts=all_hosts)) return data diff --git a/awx/main/tests/functional/test_jobs.py b/awx/main/tests/functional/test_jobs.py index 5169d98fb1..ed50c22faa 100644 --- a/awx/main/tests/functional/test_jobs.py +++ b/awx/main/tests/functional/test_jobs.py @@ -2,6 +2,8 @@ from awx.main.models import Job, Instance from django.test.utils import override_settings import pytest +import json + @pytest.mark.django_db def test_orphan_unified_job_creation(instance, inventory): @@ -22,3 +24,15 @@ def test_job_capacity_and_with_inactive_node(): assert Instance.objects.total_capacity() == 100 with override_settings(AWX_ACTIVE_NODE_TIME=0): assert Instance.objects.total_capacity() < 100 + + +@pytest.mark.django_db +def test_job_notification_data(inventory): + encrypted_str = "$encrypted$" + job = Job.objects.create( + job_template=None, inventory=inventory, name='hi world', + extra_vars=json.dumps({"SSN": "123-45-6789"}), + survey_passwords={"SSN": encrypted_str} + ) + notification_data = job.notification_data(block=0) + assert json.loads(notification_data['extra_vars'])['SSN'] == encrypted_str