summaryrefslogtreecommitdiffstats
path: root/roles/openshift_management/filter_plugins
diff options
context:
space:
mode:
authorTim Bielawa <tbielawa@redhat.com>2017-10-19 16:28:53 -0400
committerTim Bielawa <tbielawa@redhat.com>2017-10-20 16:04:39 -0400
commit7d88f8dada9f19dd6b49af9bb539e43aaa15f138 (patch)
tree0711e86d6692bbccecd0b93e5e7742fc6ce0cc83 /roles/openshift_management/filter_plugins
parentf3741a05097f1848d2b3e9a01f03e76a33487e01 (diff)
downloadopenshift-7d88f8dada9f19dd6b49af9bb539e43aaa15f138.tar.gz
openshift-7d88f8dada9f19dd6b49af9bb539e43aaa15f138.tar.bz2
openshift-7d88f8dada9f19dd6b49af9bb539e43aaa15f138.tar.xz
openshift-7d88f8dada9f19dd6b49af9bb539e43aaa15f138.zip
Refactor adding multiple container providers
Diffstat (limited to 'roles/openshift_management/filter_plugins')
-rw-r--r--roles/openshift_management/filter_plugins/oo_management_filters.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/roles/openshift_management/filter_plugins/oo_management_filters.py b/roles/openshift_management/filter_plugins/oo_management_filters.py
new file mode 100644
index 000000000..06bc0796d
--- /dev/null
+++ b/roles/openshift_management/filter_plugins/oo_management_filters.py
@@ -0,0 +1,27 @@
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
+def oo_filter_container_providers(results):
+ """results - the result from posting the API calls for adding new
+providers"""
+ all_results = []
+ for result in results:
+ if 'results' in result['json']:
+ # We got an OK response
+ r = result['json']['results'][0]
+ all_results.append("Provider '{}' - Added successfully".format(r['name']))
+ elif 'error' in result['json']:
+ # This was a problem
+ all_results.append("Provider '{}' - Failed to add. Message: {}".format(
+ result['item']['name'], result['json']['error']['message']))
+ return all_results
+
+class FilterModule(object):
+ """ Custom ansible filter mapping """
+
+ # pylint: disable=no-self-use, too-few-public-methods
+ def filters(self):
+ """ returns a mapping of filters to methods """
+ return {
+ "oo_filter_container_providers": oo_filter_container_providers,
+ }