From c959f9dcf9f4bc0c3dfeb4e68c082c79d479de35 Mon Sep 17 00:00:00 2001 From: Tim Bielawa Date: Fri, 26 Aug 2016 08:53:45 -0700 Subject: Fix PyLint errors discovered when upgrading to newer version * Fixes PyLint to run in the virtualenv used for all tests * Replaced 'LooseVersion' with 'parse_version' from setuptools - This is a work around for the issue in https://github.com/PyCQA/pylint/issues/73 in which pylint can not import disutils.version correctly in a virtualenv. * Removed the unused function 'delete_hosts' which was causing a pylint error as well * Removed a deprecated pylint pragma option, 'bad-builtin' * Fixed some import ordering issues it was picky about * Added another disable for a case where the PyLint suggestion would have us altering the container we would be iterating over * Add code-coverage reports to the unittests with the MINIMUM coverage percentage for success set to 70% - Current test coverage is at 76% --- utils/src/ooinstall/cli_installer.py | 32 +++++++------------------------- utils/src/ooinstall/oo_config.py | 7 ++++++- utils/src/ooinstall/openshift_ansible.py | 5 +++-- 3 files changed, 16 insertions(+), 28 deletions(-) (limited to 'utils/src/ooinstall') diff --git a/utils/src/ooinstall/cli_installer.py b/utils/src/ooinstall/cli_installer.py index 67f3659ff..9420ec287 100644 --- a/utils/src/ooinstall/cli_installer.py +++ b/utils/src/ooinstall/cli_installer.py @@ -5,7 +5,8 @@ import os import re import sys -from distutils.version import LooseVersion +import logging +import setuptools.version import click from ooinstall import openshift_ansible from ooinstall.oo_config import OOConfig @@ -13,7 +14,6 @@ from ooinstall.oo_config import OOConfigInvalidHostError from ooinstall.oo_config import Host, Role from ooinstall.variants import find_variant, get_variant_version_combos -import logging installer_log = logging.getLogger('installer') installer_log.setLevel(logging.CRITICAL) installer_file_handler = logging.FileHandler('/tmp/installer.txt') @@ -98,27 +98,6 @@ def list_hosts(hosts): click.echo(' {}: {}'.format(idx, hosts[idx])) -def delete_hosts(hosts): - while True: - list_hosts(hosts) - del_idx = click.prompt('Select host to delete, y/Y to confirm, ' - 'or n/N to add more hosts', default='n') - try: - del_idx = int(del_idx) - hosts.remove(hosts[del_idx]) - except IndexError: - click.echo("\"{}\" doesn't match any hosts listed.".format(del_idx)) - except ValueError: - try: - response = del_idx.lower() - if response in ['y', 'n']: - return hosts, response - click.echo("\"{}\" doesn't correspond to any valid input.".format(del_idx)) - except AttributeError: - click.echo("\"{}\" doesn't correspond to any valid input.".format(del_idx)) - return hosts, None - - def collect_hosts(oo_cfg, existing_env=False, masters_set=False, print_summary=True): """ Collect host information from user. This will later be filled in using @@ -652,8 +631,11 @@ https://docs.openshift.com/enterprise/latest/admin_guide/install/prerequisites.h oo_cfg.deployment.variables['master_routingconfig_subdomain'] = get_master_routingconfig_subdomain() click.clear() + current_version = setuptools.version.pkg_resources.parse_version( + oo_cfg.settings.get('variant_version', '0.0')) + min_version = setuptools.version.pkg_resources.parse_version('3.2') if not oo_cfg.settings.get('openshift_http_proxy', None) and \ - LooseVersion(oo_cfg.settings.get('variant_version', '0.0')) >= LooseVersion('3.2'): + current_version >= min_version: http_proxy, https_proxy, proxy_excludes = get_proxy_hostnames_and_excludes() oo_cfg.deployment.variables['proxy_http'] = http_proxy oo_cfg.deployment.variables['proxy_https'] = https_proxy @@ -920,7 +902,7 @@ def uninstall(ctx): @click.option('--latest-minor', '-l', is_flag=True, default=False) @click.option('--next-major', '-n', is_flag=True, default=False) @click.pass_context -# pylint: disable=bad-builtin,too-many-statements +# pylint: disable=too-many-statements def upgrade(ctx, latest_minor, next_major): oo_cfg = ctx.obj['oo_cfg'] diff --git a/utils/src/ooinstall/oo_config.py b/utils/src/ooinstall/oo_config.py index b9f0cc65c..409276360 100644 --- a/utils/src/ooinstall/oo_config.py +++ b/utils/src/ooinstall/oo_config.py @@ -2,10 +2,11 @@ import os import sys +import logging import yaml from pkg_resources import resource_filename -import logging + installer_log = logging.getLogger('installer') CONFIG_PERSIST_SETTINGS = [ @@ -325,6 +326,10 @@ class OOConfig(object): self.settings['ansible_inventory_path'] = \ '{}/hosts'.format(os.path.dirname(self.config_path)) + # pylint: disable=consider-iterating-dictionary + # Disabled because we shouldn't alter the container we're + # iterating over + # # clean up any empty sets for setting in self.settings.keys(): if not self.settings[setting]: diff --git a/utils/src/ooinstall/openshift_ansible.py b/utils/src/ooinstall/openshift_ansible.py index 001c58d73..4113bb126 100644 --- a/utils/src/ooinstall/openshift_ansible.py +++ b/utils/src/ooinstall/openshift_ansible.py @@ -4,9 +4,10 @@ import socket import subprocess import sys import os +import logging import yaml from ooinstall.variants import find_variant -import logging + installer_log = logging.getLogger('installer') CFG = None @@ -229,7 +230,7 @@ def load_system_facts(inventory_file, os_facts_path, env_vars, verbose=False): os_facts_path]) installer_log.debug("Going to subprocess out to ansible now with these args: %s", ' '.join(args)) status = subprocess.call(args, env=env_vars, stdout=FNULL) - if not status == 0: + if status != 0: installer_log.debug("Exit status from subprocess was not 0") return [], 1 -- cgit v1.2.3