summaryrefslogtreecommitdiffstats
path: root/filter_plugins/oo_filters.py
diff options
context:
space:
mode:
Diffstat (limited to 'filter_plugins/oo_filters.py')
-rw-r--r--filter_plugins/oo_filters.py56
1 files changed, 30 insertions, 26 deletions
diff --git a/filter_plugins/oo_filters.py b/filter_plugins/oo_filters.py
index 997634777..c3f94feff 100644
--- a/filter_plugins/oo_filters.py
+++ b/filter_plugins/oo_filters.py
@@ -1,32 +1,32 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
# vim: expandtab:tabstop=4:shiftwidth=4
+# pylint: disable=no-name-in-module, import-error, wrong-import-order, ungrouped-imports
"""
Custom filters for use in openshift-ansible
"""
+import os
+import pdb
+import pkg_resources
+import re
+import json
+import yaml
from ansible import errors
from collections import Mapping
from distutils.util import strtobool
from distutils.version import LooseVersion
from operator import itemgetter
+from ansible.parsing.yaml.dumper import AnsibleDumper
+from urlparse import urlparse
-HAS_OPENSSL=False
+HAS_OPENSSL = False
try:
import OpenSSL.crypto
- HAS_OPENSSL=True
+ HAS_OPENSSL = True
except ImportError:
pass
-import os
-import pdb
-import pkg_resources
-import re
-import json
-import yaml
-from ansible.parsing.yaml.dumper import AnsibleDumper
-from urlparse import urlparse
-
try:
# ansible-2.2
# ansible.utils.unicode.to_unicode is deprecated in ansible-2.2,
@@ -36,6 +36,7 @@ except ImportError:
# ansible-2.1
from ansible.utils.unicode import to_unicode as to_text
+
# Disabling too-many-public-methods, since filter methods are necessarily
# public
# pylint: disable=too-many-public-methods
@@ -74,7 +75,6 @@ class FilterModule(object):
return ptr
-
@staticmethod
def oo_flatten(data):
""" This filter plugin will flatten a list of lists
@@ -163,7 +163,7 @@ class FilterModule(object):
else:
retval = [FilterModule.get_attr(d, attribute) for d in data]
- retval = [val for val in retval if val != None]
+ retval = [val for val in retval if val is not None]
return retval
@@ -241,6 +241,7 @@ class FilterModule(object):
arrange them as a string 'key=value key=value'
"""
if not isinstance(data, dict):
+ # pylint: disable=line-too-long
raise errors.AnsibleFilterError("|failed expects first param is a dict [oo_combine_dict]. Got %s. Type: %s" % (str(data), str(type(data))))
return out_joiner.join([in_joiner.join([k, str(v)]) for k, v in data.items()])
@@ -293,6 +294,7 @@ class FilterModule(object):
}
"""
if not isinstance(data, dict):
+ # pylint: disable=line-too-long
raise errors.AnsibleFilterError("|failed expects first param is a dict [oo_ec2_volume_def]. Got %s. Type: %s" % (str(data), str(type(data))))
if host_type not in ['master', 'node', 'etcd']:
raise errors.AnsibleFilterError("|failed expects etcd, master or node"
@@ -427,7 +429,6 @@ class FilterModule(object):
return [n for n in nodes if label_filter(n)]
-
@staticmethod
def oo_parse_heat_stack_outputs(data):
""" Formats the HEAT stack output into a usable form
@@ -592,8 +593,8 @@ class FilterModule(object):
returns 'value2'
"""
for tag in tags:
- if tag[:len(prefix)+len(key)] == prefix + key:
- return tag[len(prefix)+len(key)+1:]
+ if tag[:len(prefix) + len(key)] == prefix + key:
+ return tag[len(prefix) + len(key) + 1:]
raise KeyError(key)
def _add_host(clusters,
@@ -675,7 +676,7 @@ class FilterModule(object):
return facts
@staticmethod
- # pylint: disable=too-many-branches
+ # pylint: disable=too-many-branches, too-many-nested-blocks
def oo_persistent_volumes(hostvars, groups, persistent_volumes=None):
""" Generate list of persistent volumes based on oo_openshift_env
storage options set in host variables.
@@ -684,10 +685,10 @@ class FilterModule(object):
raise errors.AnsibleFilterError("|failed expects hostvars is a dict")
if not issubclass(type(groups), dict):
raise errors.AnsibleFilterError("|failed expects groups is a dict")
- if persistent_volumes != None and not issubclass(type(persistent_volumes), list):
+ if persistent_volumes is not None and not issubclass(type(persistent_volumes), list):
raise errors.AnsibleFilterError("|failed expects persistent_volumes is a list")
- if persistent_volumes == None:
+ if persistent_volumes is None:
persistent_volumes = []
if 'hosted' in hostvars['openshift']:
for component in hostvars['openshift']['hosted']:
@@ -695,10 +696,10 @@ class FilterModule(object):
params = hostvars['openshift']['hosted'][component]['storage']
kind = params['kind']
create_pv = params['create_pv']
- if kind != None and create_pv:
+ if kind is not None and create_pv:
if kind == 'nfs':
host = params['host']
- if host == None:
+ if host is None:
if 'oo_nfs_to_config' in groups and len(groups['oo_nfs_to_config']) > 0:
host = groups['oo_nfs_to_config'][0]
else:
@@ -746,10 +747,10 @@ class FilterModule(object):
"""
if not issubclass(type(hostvars), dict):
raise errors.AnsibleFilterError("|failed expects hostvars is a dict")
- if persistent_volume_claims != None and not issubclass(type(persistent_volume_claims), list):
+ if persistent_volume_claims is not None and not issubclass(type(persistent_volume_claims), list):
raise errors.AnsibleFilterError("|failed expects persistent_volume_claims is a list")
- if persistent_volume_claims == None:
+ if persistent_volume_claims is None:
persistent_volume_claims = []
if 'hosted' in hostvars['openshift']:
for component in hostvars['openshift']['hosted']:
@@ -785,7 +786,7 @@ class FilterModule(object):
rpms_31 = []
for rpm in rpms:
- if not 'atomic' in rpm:
+ if 'atomic' not in rpm:
rpm = rpm.replace("openshift", "atomic-openshift")
if openshift_version:
rpm = rpm + openshift_version
@@ -816,7 +817,7 @@ class FilterModule(object):
for container in pod['spec']['containers']:
if re.search(image_regex, container['image']):
matching_pods.append(pod)
- break # stop here, don't add a pod more than once
+ break # stop here, don't add a pod more than once
return matching_pods
@@ -827,7 +828,7 @@ class FilterModule(object):
for host in hosts:
try:
retval.append(hostvars[host])
- except errors.AnsibleError as _:
+ except errors.AnsibleError:
# host does not exist
pass
@@ -869,6 +870,7 @@ class FilterModule(object):
# netloc wasn't parsed, assume url was missing scheme and path
return parse_result.path
+ # pylint: disable=invalid-name, missing-docstring, unused-argument
@staticmethod
def oo_openshift_loadbalancer_frontends(api_port, servers_hostvars, use_nuage=False, nuage_rest_port=None):
loadbalancer_frontends = [{'name': 'atomic-openshift-api',
@@ -884,6 +886,7 @@ class FilterModule(object):
'default_backend': 'nuage-monitor'})
return loadbalancer_frontends
+ # pylint: disable=invalid-name, missing-docstring
@staticmethod
def oo_openshift_loadbalancer_backends(api_port, servers_hostvars, use_nuage=False, nuage_rest_port=None):
loadbalancer_backends = [{'name': 'atomic-openshift-api',
@@ -892,6 +895,7 @@ class FilterModule(object):
'balance': 'source',
'servers': FilterModule.oo_haproxy_backend_masters(servers_hostvars, api_port)}]
if bool(strtobool(str(use_nuage))) and nuage_rest_port is not None:
+ # pylint: disable=line-too-long
loadbalancer_backends.append({'name': 'nuage-monitor',
'mode': 'tcp',
'option': 'tcplog',