From cef42e2541f7ddeaf284b1350eed7f4e46234fe9 Mon Sep 17 00:00:00 2001 From: Jason DeTiberus Date: Mon, 28 Nov 2016 15:32:46 -0500 Subject: update tests and flake8/pylint fixes --- filter_plugins/oo_filters.py | 56 ++++++++++++++++++++----------------- filter_plugins/oo_zabbix_filters.py | 3 +- filter_plugins/openshift_master.py | 10 +++---- filter_plugins/openshift_node.py | 3 +- 4 files changed, 38 insertions(+), 34 deletions(-) (limited to 'filter_plugins') 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', diff --git a/filter_plugins/oo_zabbix_filters.py b/filter_plugins/oo_zabbix_filters.py index fcfe43777..1c1854b29 100644 --- a/filter_plugins/oo_zabbix_filters.py +++ b/filter_plugins/oo_zabbix_filters.py @@ -7,6 +7,7 @@ Custom zabbix filters for use in openshift-ansible import pdb + class FilterModule(object): ''' Custom zabbix ansible filters ''' @@ -107,7 +108,7 @@ class FilterModule(object): for results in data: if cluster == results['item'][0]: results = results['results'] - if results and len(results) > 0 and all([results[0].has_key(_key) for _key in keys]): + if results and len(results) > 0 and all([_key in results[0] for _key in keys]): tmp = {} tmp['clusterid'] = cluster for key in keys: diff --git a/filter_plugins/openshift_master.py b/filter_plugins/openshift_master.py index 8d3f31169..57b1f7d82 100644 --- a/filter_plugins/openshift_master.py +++ b/filter_plugins/openshift_master.py @@ -9,20 +9,21 @@ import sys import yaml from ansible import errors -from distutils.version import LooseVersion -# pylint: disable=no-name-in-module,import-error +# pylint: disable=no-name-in-module,import-error,wrong-import-order +from distutils.version import LooseVersion try: # ansible-2.1 from ansible.plugins.filter.core import to_bool as ansible_bool except ImportError: try: - #ansible-2.0.x + # ansible-2.0.x from ansible.runner.filter_plugins.core import bool as ansible_bool except ImportError: # ansible-1.9.x from ansible.plugins.filter.core import bool as ansible_bool + class IdentityProviderBase(object): """ IdentityProviderBase @@ -388,7 +389,6 @@ class OpenIDIdentityProvider(IdentityProviderOauthBase): val = ansible_bool(self._idp['extraAuthorizeParameters'].pop('include_granted_scopes')) self._idp['extraAuthorizeParameters']['include_granted_scopes'] = val - def validate(self): ''' validate this idp instance ''' IdentityProviderOauthBase.validate(self) @@ -495,7 +495,6 @@ class FilterModule(object): idp_inst.set_provider_items() idp_list.append(idp_inst) - IdentityProviderBase.validate_idp_list(idp_list, openshift_version, deployment_type) return yaml.safe_dump([idp.to_dict() for idp in idp_list], default_flow_style=False) @@ -575,7 +574,6 @@ class FilterModule(object): htpasswd_entries[user] = passwd return htpasswd_entries - def filters(self): ''' returns a mapping of filters to methods ''' return {"translate_idps": self.translate_idps, diff --git a/filter_plugins/openshift_node.py b/filter_plugins/openshift_node.py index 22670cf79..8c7302052 100644 --- a/filter_plugins/openshift_node.py +++ b/filter_plugins/openshift_node.py @@ -6,6 +6,7 @@ Custom filters for use in openshift-node ''' from ansible import errors + class FilterModule(object): ''' Custom ansible filters for use by openshift_node role''' @@ -23,7 +24,7 @@ class FilterModule(object): raise errors.AnsibleFilterError("|failed expects hostvars is a dict") # We always use what they've specified if they've specified a value - if openshift_dns_ip != None: + if openshift_dns_ip is not None: return openshift_dns_ip if bool(hostvars['openshift']['common']['use_dnsmasq']): -- cgit v1.2.1