From 79b1b57045e86d9845e352c3f2aa0efbab6111a9 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周六, 14 3月 2020 10:19:09 +0800 Subject: [PATCH] tests and improvements --- src/library/os/execution_environment_common.cpp | 22 ++++++++++++++-------- 1 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/library/os/execution_environment_common.cpp b/src/library/os/execution_environment_common.cpp index 9fa2a38..06f5c56 100644 --- a/src/library/os/execution_environment_common.cpp +++ b/src/library/os/execution_environment_common.cpp @@ -31,22 +31,28 @@ return result; } -bool ExecutionEnvironment::is_cloud() const { return getCloudProvider() != ON_PREMISE; } +bool ExecutionEnvironment::is_cloud() const { + CLOUD_PROVIDER prov = getCloudProvider(); + return prov != ON_PREMISE && prov != PROV_UNKNOWN; +} // TODO test and azure CLOUD_PROVIDER ExecutionEnvironment::getCloudProvider() const { CLOUD_PROVIDER result = PROV_UNKNOWN; - if (bios_description.size() > 0 || bios_vendor.size() > 0 || sys_vendor.size() > 0) { - if (bios_vendor.find("SEABIOS") != string::npos || bios_description.find("ALIBABA") != string::npos || - sys_vendor.find("ALIBABA") != string::npos) { + if (m_bios_description.size() > 0 || m_bios_vendor.size() > 0 || m_sys_vendor.size() > 0) { + if (m_bios_vendor.find("SEABIOS") != string::npos || m_bios_description.find("ALIBABA") != string::npos || + m_sys_vendor.find("ALIBABA") != string::npos) { result = ALI_CLOUD; - } else if (sys_vendor.find("GOOGLE") != string::npos || bios_description.find("GOOGLE") != string::npos) { + } else if (m_sys_vendor.find("GOOGLE") != string::npos || m_bios_description.find("GOOGLE") != string::npos) { result = GOOGLE_CLOUD; - } else if (bios_vendor.find("AWS") != string::npos || bios_description.find("AMAZON") != string::npos || - sys_vendor.find("AWS") != string::npos) { + } else if (m_bios_vendor.find("AWS") != string::npos || m_bios_description.find("AMAZON") != string::npos || + m_sys_vendor.find("AWS") != string::npos) { result = AWS; + } else if (m_bios_description.find("HP-COMPAQ") != string::npos || m_bios_description.find("ASUS") || + m_bios_description.find("DELL")) { + result = ON_PREMISE; } - } + } return result; } } // namespace os -- Gitblit v1.9.1