summaryrefslogtreecommitdiffstats
path: root/roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py
diff options
context:
space:
mode:
authorEric Wolinetz <ewolinet@redhat.com>2017-09-27 17:03:19 -0500
committerEric Wolinetz <ewolinet@redhat.com>2017-09-27 17:11:17 -0500
commit23c44b36cce3f944a07f4960aa1e1b58f6b12756 (patch)
treec1556db4b6d788689438e44e51a5efd477ddda7b /roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py
parent3462d2dcf1a35d0cb81314de4cee44863e9cd85d (diff)
downloadopenshift-23c44b36cce3f944a07f4960aa1e1b58f6b12756.tar.gz
openshift-23c44b36cce3f944a07f4960aa1e1b58f6b12756.tar.bz2
openshift-23c44b36cce3f944a07f4960aa1e1b58f6b12756.tar.xz
openshift-23c44b36cce3f944a07f4960aa1e1b58f6b12756.zip
Checking if any openshift_*_storage_kind variables are set to dynamic without enabling dynamic provisioning
Diffstat (limited to 'roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py')
-rw-r--r--roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py b/roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py
new file mode 100644
index 000000000..d8515528c
--- /dev/null
+++ b/roles/openshift_sanitize_inventory/filter_plugins/openshift_sanitize_inventory.py
@@ -0,0 +1,43 @@
+import re
+
+'''
+ Openshift Sanitize inventory class that provides useful filters used in Logging.
+'''
+
+
+# This should be removed after map_from_pairs is no longer used in __deprecations_logging.yml
+def map_from_pairs(source, delim="="):
+ ''' Returns a dict given the source and delim delimited '''
+ if source == '':
+ return dict()
+
+ return dict(item.split(delim) for item in source.split(","))
+
+
+def vars_with_pattern(source, pattern=""):
+ ''' Returns a list of variables whose name matches the given pattern '''
+ if source == '':
+ return list()
+
+ var_list = list()
+
+ var_pattern = re.compile(pattern)
+
+ for item in source:
+ if var_pattern.match(item):
+ var_list.append(item)
+
+ return var_list
+
+
+# pylint: disable=too-few-public-methods
+class FilterModule(object):
+ ''' OpenShift Logging Filters '''
+
+ # pylint: disable=no-self-use, too-few-public-methods
+ def filters(self):
+ ''' Returns the names of the filters provided by this class '''
+ return {
+ 'map_from_pairs': map_from_pairs,
+ 'vars_with_pattern': vars_with_pattern
+ }