diff options
author | Luke Meyer <lmeyer@redhat.com> | 2018-01-17 10:24:14 -0500 |
---|---|---|
committer | Luke Meyer <lmeyer@redhat.com> | 2018-01-17 11:01:27 -0500 |
commit | b4b5b685581a6c4b35953bf32d56c1f96b12ff51 (patch) | |
tree | 307dbaeef9bc0f7db07154b71d3fef218db7e2ce /roles/openshift_health_checker/openshift_checks/__init__.py | |
parent | 9f461f2ad2b11ca87ef1ce6ee381ccf31b703fc8 (diff) | |
download | openshift-b4b5b685581a6c4b35953bf32d56c1f96b12ff51.tar.gz openshift-b4b5b685581a6c4b35953bf32d56c1f96b12ff51.tar.bz2 openshift-b4b5b685581a6c4b35953bf32d56c1f96b12ff51.tar.xz openshift-b4b5b685581a6c4b35953bf32d56c1f96b12ff51.zip |
health checks: factor out get_required_version
Diffstat (limited to 'roles/openshift_health_checker/openshift_checks/__init__.py')
-rw-r--r-- | roles/openshift_health_checker/openshift_checks/__init__.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/roles/openshift_health_checker/openshift_checks/__init__.py b/roles/openshift_health_checker/openshift_checks/__init__.py index 8c3d71ca9..b9c41d1b4 100644 --- a/roles/openshift_health_checker/openshift_checks/__init__.py +++ b/roles/openshift_health_checker/openshift_checks/__init__.py @@ -325,6 +325,24 @@ class OpenShiftCheck(object): return tuple(int(x) for x in components[:2]) + def get_required_version(self, name, version_map): + """Return the correct required version(s) for the current (or nearest) OpenShift version.""" + openshift_version = self.get_major_minor_version() + + earliest = min(version_map) + latest = max(version_map) + if openshift_version < earliest: + return version_map[earliest] + if openshift_version > latest: + return version_map[latest] + + required_version = version_map.get(openshift_version) + if not required_version: + msg = "There is no recommended version of {} for the current version of OpenShift ({})" + raise OpenShiftCheckException(msg.format(name, ".".join(str(comp) for comp in openshift_version))) + + return required_version + def find_ansible_mount(self, path): """Return the mount point for path from ansible_mounts.""" |