diff options
author | Scott Dodson <sdodson@redhat.com> | 2017-08-15 13:25:20 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-15 13:25:20 -0400 |
commit | 6339f90c666796b17720e4212f56036cdc2e6d02 (patch) | |
tree | b208ba1916b808010a936cd43f0d72657bc6c27c /roles/openshift_health_checker/library/rpm_version.py | |
parent | 9edfc0f8b2f18db18e9652f4281ca85224b33358 (diff) | |
parent | 7df38035f5e20d49d6cd5eb7a3310070a63a2f78 (diff) | |
download | openshift-6339f90c666796b17720e4212f56036cdc2e6d02.tar.gz openshift-6339f90c666796b17720e4212f56036cdc2e6d02.tar.bz2 openshift-6339f90c666796b17720e4212f56036cdc2e6d02.tar.xz openshift-6339f90c666796b17720e4212f56036cdc2e6d02.zip |
Merge pull request #5036 from Miciah/openshift_checks-support-ovs-2.7-on-ocp-3.5-and-3.6
openshift_checks: allow OVS 2.7 on OCP 3.5 and 3.6
Diffstat (limited to 'roles/openshift_health_checker/library/rpm_version.py')
-rw-r--r-- | roles/openshift_health_checker/library/rpm_version.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/roles/openshift_health_checker/library/rpm_version.py b/roles/openshift_health_checker/library/rpm_version.py index 8ea223055..c24fbba3b 100644 --- a/roles/openshift_health_checker/library/rpm_version.py +++ b/roles/openshift_health_checker/library/rpm_version.py @@ -4,6 +4,7 @@ Ansible module for rpm-based systems determining existing package version inform """ from ansible.module_utils.basic import AnsibleModule +from ansible.module_utils.six import string_types IMPORT_EXCEPTION = None try: @@ -82,11 +83,16 @@ def _check_pkg_versions(found_pkgs_dict, expected_pkgs_dict): continue found_versions = [_parse_version(version) for version in found_pkgs_dict[pkg_name]] - expected_version = _parse_version(pkg["version"]) - if expected_version not in found_versions: + + if isinstance(pkg["version"], string_types): + expected_versions = [_parse_version(pkg["version"])] + else: + expected_versions = [_parse_version(version) for version in pkg["version"]] + + if not set(expected_versions) & set(found_versions): invalid_pkg_versions[pkg_name] = { "found_versions": found_versions, - "required_version": expected_version, + "required_versions": expected_versions, } if not_found_pkgs: @@ -106,7 +112,7 @@ def _check_pkg_versions(found_pkgs_dict, expected_pkgs_dict): "The following packages were found to be installed with an incorrect version: {}".format('\n'.join([ " \n{}\n Required version: {}\n Found versions: {}".format( pkg_name, - pkg["required_version"], + ', '.join(pkg["required_versions"]), ', '.join([version for version in pkg["found_versions"]])) for pkg_name, pkg in invalid_pkg_versions.items() ])) |