]> git.pld-linux.org Git - packages/ruby-ohai.git/blobdiff - virtualization-vserver.patch
up to 7.6.0
[packages/ruby-ohai.git] / virtualization-vserver.patch
index 54b9080254f14380cd13b69a5f3b1c848f51ab60..75491a5725330b37afc30bec12e31bd0785808cf 100644 (file)
@@ -1,41 +1,56 @@
---- ohai-6.16.0/lib/ohai/plugins/linux/virtualization.rb~      2013-01-17 21:03:16.000000000 +0200
-+++ ohai-6.16.0/lib/ohai/plugins/linux/virtualization.rb       2013-05-25 20:52:31.871480338 +0300
-@@ -23,6 +23,20 @@
- # if it is possible to detect paravirt vs hardware virt, it should be put in
- # virtualization[:mechanism]
+detect vserver before vbox, allowing "vbox-guest" status to overwrite
+"vserver-host" detection
+https://tickets.opscode.com/browse/OHAI-479
+
+Eventually to be dropped in favour of using node[:virtualization][:systems]
+https://tickets.opscode.com/browse/OHAI-182
+
+--- ruby-ohai-7.4.0/lib/ohai/plugins/linux/virtualization.rb~  2014-09-06 07:18:08.000000000 +0300
++++ ruby-ohai-7.4.0/lib/ohai/plugins/linux/virtualization.rb   2014-09-18 00:30:42.946587051 +0300
+@@ -101,6 +101,23 @@
+       virtualization[:systems][:openvz] = "guest"
+     end
  
-+# Detect Linux-VServer
-+if File.exists?("/proc/self/status")
-+  proc_self_status = File.read("/proc/self/status")
-+  vxid = proc_self_status.match(/^(s_context|VxID): (\d+)$/)
-+  if vxid and vxid[2]
-+    virtualization[:system] = "linux-vserver"
-+    if vxid[2] == "0"
-+      virtualization[:role] = "host"
-+    else
-+      virtualization[:role] = "guest"
-+     end
-+  end
-+end
++    # Detect Linux-VServer
++    if File.exists?("/proc/self/status")
++      proc_self_status = File.read("/proc/self/status")
++      vxid = proc_self_status.match(/^(s_context|VxID): (\d+)$/)
++      if vxid and vxid[2]
++        virtualization[:system] = "linux-vserver"
++        if vxid[2] == "0"
++          virtualization[:role] = "host"
++          virtualization[:systems]["linux-vserver"] = "host"
++        else
++          virtualization[:role] = "guest"
++          virtualization[:systems]["linux-vserver"] = "guest"
++        end
++      end
++    end
 +
- ## Xen
- # /proc/xen is an empty dir for EL6 + Linode Guests
- if File.exists?("/proc/xen")
-@@ -109,17 +123,3 @@
++
+     # http://www.dmo.ca/blog/detecting-virtualization-on-linux
+     if File.exists?("/usr/sbin/dmidecode")
+       so = shell_out("dmidecode")
+@@ -134,22 +151,6 @@
+       end
+     end
  
-   end
- end
+-    # Detect Linux-VServer
+-    if File.exists?("/proc/self/status")
+-      proc_self_status = File.read("/proc/self/status")
+-      vxid = proc_self_status.match(/^(s_context|VxID): (\d+)$/)
+-      if vxid and vxid[2]
+-        virtualization[:system] = "linux-vserver"
+-        if vxid[2] == "0"
+-          virtualization[:role] = "host"
+-          virtualization[:systems]["linux-vserver"] = "host"
+-        else
+-          virtualization[:role] = "guest"
+-          virtualization[:systems]["linux-vserver"] = "guest"
+-        end
+-      end
+-    end
 -
--# Detect Linux-VServer
--if File.exists?("/proc/self/status")
--  proc_self_status = File.read("/proc/self/status")
--  vxid = proc_self_status.match(/^(s_context|VxID): (\d+)$/)
--  if vxid and vxid[2]
--    virtualization[:system] = "linux-vserver"
--    if vxid[2] == "0"
--      virtualization[:role] = "host"
--    else
--      virtualization[:role] = "guest"
--     end
--  end
--end
+     # Detect LXC/Docker
+     #
+     # /proc/self/cgroup will look like this inside a docker container:
This page took 0.025436 seconds and 4 git commands to generate.