From 8883738a7c700c25dd0a6b2e1ae43db5748dcbc4 Mon Sep 17 00:00:00 2001 From: Chris Church Date: Wed, 12 Oct 2016 14:47:22 -0400 Subject: [PATCH] Fix issue when string list settings field is null. Resolves #3683. --- awx/conf/fields.py | 6 ++++++ awx/settings/defaults.py | 3 --- awx/sso/conf.py | 6 ++++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/awx/conf/fields.py b/awx/conf/fields.py index ae299137e6..bd2e047ae7 100644 --- a/awx/conf/fields.py +++ b/awx/conf/fields.py @@ -20,8 +20,14 @@ logger = logging.getLogger('awx.conf.fields') class StringListField(ListField): + child = CharField() + def to_representation(self, value): + if value is None and self.allow_null: + return None + return super(StringListField, self).to_representation(value) + class URLField(CharField): diff --git a/awx/settings/defaults.py b/awx/settings/defaults.py index ecc27fcbf0..c740bed39b 100644 --- a/awx/settings/defaults.py +++ b/awx/settings/defaults.py @@ -473,9 +473,6 @@ SOCIAL_AUTH_SAML_TECHNICAL_CONTACT = {} SOCIAL_AUTH_SAML_SUPPORT_CONTACT = {} SOCIAL_AUTH_SAML_ENABLED_IDPS = {} -SOCIAL_AUTH_ORGANIZATION_MAP = {} -SOCIAL_AUTH_TEAM_MAP = {} - # Any ANSIBLE_* settings will be passed to the subprocess environment by the # celery task. diff --git a/awx/sso/conf.py b/awx/sso/conf.py index 5bcff670cf..45f75b35af 100644 --- a/awx/sso/conf.py +++ b/awx/sso/conf.py @@ -126,7 +126,8 @@ register( register( 'SOCIAL_AUTH_ORGANIZATION_MAP', field_class=fields.SocialOrganizationMapField, - default={}, + allow_null=True, + default=None, label=_('Social Auth Organization Map'), help_text=SOCIAL_AUTH_ORGANIZATION_MAP_HELP_TEXT, category=_('Authentication'), @@ -137,7 +138,8 @@ register( register( 'SOCIAL_AUTH_TEAM_MAP', field_class=fields.SocialTeamMapField, - default={}, + allow_null=True, + default=None, label=_('Social Auth Team Map'), help_text=SOCIAL_AUTH_TEAM_MAP_HELP_TEXT, category=_('Authentication'),