summaryrefslogtreecommitdiffstats
path: root/filter_plugins
diff options
context:
space:
mode:
authorJason DeTiberus <detiber@gmail.com>2016-04-26 10:03:05 -0400
committerJason DeTiberus <detiber@gmail.com>2016-04-26 10:03:05 -0400
commit44407f04615073f1ffde4bf31f6a2a5894c7bafc (patch)
tree19281b0063447251e82fa14ae65f3f14d0dff603 /filter_plugins
parent7c6d0d70e2371bd9abb6feb4e6c098ae4ddb5143 (diff)
parent2ed23a9326056a9d23b153f0ddb9ae9956f3d75b (diff)
downloadopenshift-44407f04615073f1ffde4bf31f6a2a5894c7bafc.tar.gz
openshift-44407f04615073f1ffde4bf31f6a2a5894c7bafc.tar.bz2
openshift-44407f04615073f1ffde4bf31f6a2a5894c7bafc.tar.xz
openshift-44407f04615073f1ffde4bf31f6a2a5894c7bafc.zip
Merge pull request #1726 from detiber/htpasswd_users
Add support for setting identity provider custom values
Diffstat (limited to 'filter_plugins')
-rw-r--r--filter_plugins/openshift_master.py23
1 files changed, 22 insertions, 1 deletions
diff --git a/filter_plugins/openshift_master.py b/filter_plugins/openshift_master.py
index dc12eb24b..c21709fe3 100644
--- a/filter_plugins/openshift_master.py
+++ b/filter_plugins/openshift_master.py
@@ -531,9 +531,30 @@ class FilterModule(object):
'openshift-master.kubeconfig']
return certs
+ @staticmethod
+ def oo_htpasswd_users_from_file(file_contents):
+ ''' return a dictionary of htpasswd users from htpasswd file contents '''
+ htpasswd_entries = {}
+ if not isinstance(file_contents, basestring):
+ raise errors.AnsibleFilterError("failed, expects to filter on a string")
+ for line in file_contents.splitlines():
+ user = None
+ passwd = None
+ if len(line) == 0:
+ continue
+ if ':' in line:
+ user, passwd = line.split(':', 1)
+
+ if user is None or len(user) == 0 or passwd is None or len(passwd) == 0:
+ error_msg = "failed, expects each line to be a colon separated string representing the user and passwd"
+ raise errors.AnsibleFilterError(error_msg)
+ htpasswd_entries[user] = passwd
+ return htpasswd_entries
+
def filters(self):
''' returns a mapping of filters to methods '''
return {"translate_idps": self.translate_idps,
"validate_pcs_cluster": self.validate_pcs_cluster,
- "certificates_to_synchronize": self.certificates_to_synchronize}
+ "certificates_to_synchronize": self.certificates_to_synchronize,
+ "oo_htpasswd_users_from_file": self.oo_htpasswd_users_from_file}