summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Smith <tsmith@chef.io>2020-06-30 10:46:33 -0700
committerGitHub <noreply@github.com>2020-06-30 10:46:33 -0700
commit8fb5fb625471f85c126159cf12a99befa558ee82 (patch)
treeeca41c86df63e4b15b389e7105ed489b6739cff3
parent7bd12469af0ba7227d77124dce4cdf7b9051e331 (diff)
parent7b867b20c2586db0dab0f0ba4f94c6a0c13d9033 (diff)
downloadohai-8fb5fb625471f85c126159cf12a99befa558ee82.tar.gz
Merge pull request #1476 from jaymzh/docker
Fix docker detection in ohai virtualization
-rw-r--r--lib/ohai/plugins/linux/virtualization.rb7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/ohai/plugins/linux/virtualization.rb b/lib/ohai/plugins/linux/virtualization.rb
index 1cb125aa..828c2e63 100644
--- a/lib/ohai/plugins/linux/virtualization.rb
+++ b/lib/ohai/plugins/linux/virtualization.rb
@@ -190,8 +190,11 @@ Ohai.plugin(:Virtualization) do
# Kernel docs, https://www.kernel.org/doc/Documentation/cgroups
if File.exist?("/proc/self/cgroup")
cgroup_content = File.read("/proc/self/cgroup")
- if cgroup_content =~ %r{^\d+:[^:]+:/(lxc|docker)/.+$} ||
- cgroup_content =~ %r{^\d+:[^:]+:/[^/]+/(lxc|docker)-?.+$}
+ # These two REs catch many different examples. Here's a specific one
+ # from when it is docker and there is no subsystem name.
+ # https://rubular.com/r/dV13hiU9KxmiWB
+ if cgroup_content =~ %r{^\d+:[^:]*:/(lxc|docker)/.+$} ||
+ cgroup_content =~ %r{^\d+:[^:]*:/[^/]+/(lxc|docker)-?.+$}
logger.trace("Plugin Virtualization: /proc/self/cgroup indicates #{$1} container. Detecting as #{$1} guest")
virtualization[:system] = $1
virtualization[:role] = "guest"