@cryptotaxi247 / netdata-1 / commits / d9625ac6a

fix container/host detection in system-info script (#10647)

fix container/host detection in system-info script

Ilya Mashchenko committed Feb 16, 2021 at 19:29 UTC d9625ac6a9ac82eff2905e54fe673813e8d719fa
1 file changed +12 -10
daemon/system-info.sh
+12 -10
@@ -108,9 +108,9 @@ else
108 fi
109
110 # shellcheck disable=SC2153
111 - if [ "${NAME}" = "unknown" ] || [ "${VERSION}" = "unknown" ] || [ "${ID}" = "unknown" ]; then
111 + if [ "${CONTAINER_NAME}" = "unknown" ] || [ "${CONTAINER_VERSION}" = "unknown" ] || [ "${CONTAINER_ID}" = "unknown" ]; then
112 if [ -f "/etc/lsb-release" ]; then
113 - if [ "${OS_DETECTION}" = "unknown" ]; then
113 + if [ "${CONTAINER_OS_DETECTION}" = "unknown" ]; then
114 CONTAINER_OS_DETECTION="/etc/lsb-release"
115 else
116 CONTAINER_OS_DETECTION="Mixed"
@@ -119,19 +119,19 @@ else
119 DISTRIB_RELEASE="unknown"
120 DISTRIB_CODENAME="unknown"
121 eval "$(grep -E "^(DISTRIB_ID|DISTRIB_RELEASE|DISTRIB_CODENAME)=" < /etc/lsb-release)"
122 - if [ "${NAME}" = "unknown" ]; then CONTAINER_NAME="${DISTRIB_ID}"; fi
123 - if [ "${VERSION}" = "unknown" ]; then CONTAINER_VERSION="${DISTRIB_RELEASE}"; fi
124 - if [ "${ID}" = "unknown" ]; then CONTAINER_ID="${DISTRIB_CODENAME}"; fi
122 + if [ "${CONTAINER_NAME}" = "unknown" ]; then CONTAINER_NAME="${DISTRIB_ID}"; fi
123 + if [ "${CONTAINER_VERSION}" = "unknown" ]; then CONTAINER_VERSION="${DISTRIB_RELEASE}"; fi
124 + if [ "${CONTAINER_ID}" = "unknown" ]; then CONTAINER_ID="${DISTRIB_CODENAME}"; fi
125 fi
126 if [ -n "$(command -v lsb_release 2> /dev/null)" ]; then
127 - if [ "${OS_DETECTION}" = "unknown" ]; then
127 + if [ "${CONTAINER_OS_DETECTION}" = "unknown" ]; then
128 CONTAINER_OS_DETECTION="lsb_release"
129 else
130 CONTAINER_OS_DETECTION="Mixed"
131 fi
132 - if [ "${NAME}" = "unknown" ]; then CONTAINER_NAME="$(lsb_release -is 2> /dev/null)"; fi
133 - if [ "${VERSION}" = "unknown" ]; then CONTAINER_VERSION="$(lsb_release -rs 2> /dev/null)"; fi
134 - if [ "${ID}" = "unknown" ]; then CONTAINER_ID="$(lsb_release -cs 2> /dev/null)"; fi
132 + if [ "${CONTAINER_NAME}" = "unknown" ]; then CONTAINER_NAME="$(lsb_release -is 2> /dev/null)"; fi
133 + if [ "${CONTAINER_VERSION}" = "unknown" ]; then CONTAINER_VERSION="$(lsb_release -rs 2> /dev/null)"; fi
134 + if [ "${CONTAINER_ID}" = "unknown" ]; then CONTAINER_ID="$(lsb_release -cs 2> /dev/null)"; fi
135 fi
136 fi
137 fi
@@ -143,7 +143,9 @@ HOST_VERSION="unknown"
143 HOST_VERSION_ID="unknown"
144 HOST_ID="unknown"
145 HOST_ID_LIKE="unknown"
146 -if [ "${CONTAINER}" = "unknown" ]; then
146 +
147 +# 'systemd-detect-virt' returns 'none' if there is no hardware/container virtualization.
148 +if [ "${CONTAINER}" = "unknown" ] || [ "${CONTAINER}" = "none" ]; then
149 for v in NAME ID ID_LIKE VERSION VERSION_ID OS_DETECTION; do
150 eval "HOST_$v=\$CONTAINER_$v; CONTAINER_$v=none"
151 done