summaryrefslogtreecommitdiffstats
path: root/filter_plugins
diff options
context:
space:
mode:
authorJason DeTiberus <jdetiber@redhat.com>2016-03-11 02:01:57 -0500
committerJason DeTiberus <jdetiber@redhat.com>2016-03-11 02:01:57 -0500
commit3e76266c6131d65f239481bc182ac22a4dd6f8ce (patch)
treeb8cd568f567da06271c2c05dd3f52c4d515d02c7 /filter_plugins
parent29010917f5a988b9b621457fc43623e4f67715a2 (diff)
downloadopenshift-3e76266c6131d65f239481bc182ac22a4dd6f8ce.tar.gz
openshift-3e76266c6131d65f239481bc182ac22a4dd6f8ce.tar.bz2
openshift-3e76266c6131d65f239481bc182ac22a4dd6f8ce.tar.xz
openshift-3e76266c6131d65f239481bc182ac22a4dd6f8ce.zip
Attempt to fix error validating when extraScopes and extraAuthorizeParameters are not present
Diffstat (limited to 'filter_plugins')
-rw-r--r--filter_plugins/openshift_master.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/filter_plugins/openshift_master.py b/filter_plugins/openshift_master.py
index 3a1d77f53..d0fb98ec3 100644
--- a/filter_plugins/openshift_master.py
+++ b/filter_plugins/openshift_master.py
@@ -372,13 +372,12 @@ class OpenIDIdentityProvider(IdentityProviderOauthBase):
raise errors.AnsibleFilterError("|failed claims for provider {0} "
"must be a dictionary".format(self.__class__.__name__))
- if 'extraScopes' not in self.provider['extraScopes'] and not isinstance(self.provider['extraScopes'], list):
- raise errors.AnsibleFilterError("|failed extraScopes for provider "
- "{0} must be a list".format(self.__class__.__name__))
- if ('extraAuthorizeParameters' not in self.provider['extraAuthorizeParameters']
- and not isinstance(self.provider['extraAuthorizeParameters'], dict)):
- raise errors.AnsibleFilterError("|failed extraAuthorizeParameters "
- "for provider {0} must be a dictionary".format(self.__class__.__name__))
+ for var, var_type in (('extraScopes', list), ('extraAuthorizeParameters', dict)):
+ if var in self.provider and not isinstance(self.provider[var], var_type):
+ raise errors.AnsibleFilterError("|failed {1} for provider "
+ "{0} must be a {2}".format(self.__class__.__name__,
+ var,
+ var_type.__class__.__name__))
required_claims = ['id']
optional_claims = ['email', 'name', 'preferredUsername']