summaryrefslogtreecommitdiffstats
path: root/filter_plugins/openshift_master.py
diff options
context:
space:
mode:
Diffstat (limited to 'filter_plugins/openshift_master.py')
-rw-r--r--filter_plugins/openshift_master.py29
1 files changed, 28 insertions, 1 deletions
diff --git a/filter_plugins/openshift_master.py b/filter_plugins/openshift_master.py
index f12017967..40c1083e0 100644
--- a/filter_plugins/openshift_master.py
+++ b/filter_plugins/openshift_master.py
@@ -463,7 +463,34 @@ class FilterModule(object):
IdentityProviderBase.validate_idp_list(idp_list)
return yaml.safe_dump([idp.to_dict() for idp in idp_list], default_flow_style=False)
+ @staticmethod
+ def validate_auth_secrets(secrets):
+ ''' validate type and length '''
+
+ if not issubclass(type(secrets), list):
+ raise errors.AnsibleFilterError("|failed expects openshift_master_session_auth_secrets is a list")
+
+ for secret in secrets:
+ if len(secret) < 32:
+ return False
+ return True
+
+ @staticmethod
+ def validate_encryption_secrets(secrets):
+ ''' validate type and length '''
+
+ if not issubclass(type(secrets), list):
+ raise errors.AnsibleFilterError("|failed expects openshift_master_session_encryption_secrets is a list")
+
+ for secret in secrets:
+ if len(secret) not in [16, 24, 32]:
+ return False
+ return True
def filters(self):
''' returns a mapping of filters to methods '''
- return {"translate_idps": self.translate_idps}
+ return {
+ "translate_idps": self.translate_idps,
+ "validate_auth_secrets": self.validate_auth_secrets,
+ "validate_encryption_secrets": self.validate_encryption_secrets
+ }