diff options
author | Claire McQuin <mcquin@users.noreply.github.com> | 2014-10-13 16:23:43 -0700 |
---|---|---|
committer | Claire McQuin <mcquin@users.noreply.github.com> | 2014-10-13 16:23:43 -0700 |
commit | a598b6c05cfd027d3c5128133278ab51a4bc9113 (patch) | |
tree | 3738cb93bf70ccd4a1cf8406e0a5a8914a6e6c72 | |
parent | 54f474a0545e43d3d9a02d39999da2328bdfddca (diff) | |
parent | bb11ff4df7ccc877044765d3965cda118fbc01fa (diff) | |
download | ohai-a598b6c05cfd027d3c5128133278ab51a4bc9113.tar.gz |
Merge pull request #429 from opscode/nshahzad-patch-1
Look for any number of spaces between the VxID and the value [#411]
-rw-r--r-- | lib/ohai/plugins/linux/virtualization.rb | 4 | ||||
-rw-r--r-- | spec/unit/plugins/linux/virtualization_spec.rb | 20 |
2 files changed, 21 insertions, 3 deletions
diff --git a/lib/ohai/plugins/linux/virtualization.rb b/lib/ohai/plugins/linux/virtualization.rb index 49d01565..73ba253a 100644 --- a/lib/ohai/plugins/linux/virtualization.rb +++ b/lib/ohai/plugins/linux/virtualization.rb @@ -137,7 +137,7 @@ Ohai.plugin(:Virtualization) do # 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+)$/) + vxid = proc_self_status.match(/^(s_context|VxID):\s*(\d+)$/) if vxid and vxid[2] virtualization[:system] = "linux-vserver" if vxid[2] == "0" @@ -158,7 +158,7 @@ Ohai.plugin(:Virtualization) do # /proc/self/cgroup could have a name including alpha/digit/dashes # <index #>:<subsystem>:/lxc/<named container id> # - # /proc/self/cgroup could have a non-lxc cgroup name indicating other uses + # /proc/self/cgroup could have a non-lxc cgroup name indicating other uses # of cgroups. This is probably not LXC/Docker. # <index #>:<subsystem>:/Charlie # diff --git a/spec/unit/plugins/linux/virtualization_spec.rb b/spec/unit/plugins/linux/virtualization_spec.rb index 890c425d..9fb3744f 100644 --- a/spec/unit/plugins/linux/virtualization_spec.rb +++ b/spec/unit/plugins/linux/virtualization_spec.rb @@ -230,6 +230,24 @@ VBOX @plugin[:virtualization][:systems]['linux-vserver'].should == "host" end + it "should set Linux-VServer host if /proc/self/status contains multiple space VxID: 0" do + File.should_receive(:exists?).with("/proc/self/status").and_return(true) + File.stub(:read).with("/proc/self/status").and_return("VxID: 0") + @plugin.run + @plugin[:virtualization][:system].should == "linux-vserver" + @plugin[:virtualization][:role].should == "host" + @plugin[:virtualization][:systems]['linux-vserver'].should == "host" + end + + it "should set Linux-VServer host if /proc/self/status contains tabbed VxID:\t0" do + File.should_receive(:exists?).with("/proc/self/status").and_return(true) + File.stub(:read).with("/proc/self/status").and_return("VxID:\t0") + @plugin.run + @plugin[:virtualization][:system].should == "linux-vserver" + @plugin[:virtualization][:role].should == "host" + @plugin[:virtualization][:systems]['linux-vserver'].should == "host" + end + it "should set Linux-VServer guest if /proc/self/status contains s_context > 0" do File.should_receive(:exists?).with("/proc/self/status").and_return(true) File.stub(:read).with("/proc/self/status").and_return("s_context: 2") @@ -373,7 +391,7 @@ CGROUP File.should_receive(:exists?).with("/proc/self/cgroup").and_return(true) File.stub(:read).with("/proc/self/cgroup").and_return(self_cgroup) end - + it "sets lxc host if lxc-version exists" do @plugin.stub(:lxc_version_exists?).and_return("/usr/bin/lxc-version") @plugin.run |