summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThom May <thom@chef.io>2018-02-07 15:29:33 +0100
committerThom May <thom@chef.io>2018-02-07 15:29:33 +0100
commit54f0d93f0811f8cf22e9cd1e33ac7044337b8130 (patch)
treef14656a651943356d7c61ec622457bb1a94c046f
parentf11e054070f54e72bf0c7110d0267bdd9a8f47d5 (diff)
downloadchef-tm/disable_chatty_ohai.tar.gz
remove callers of passwd ohai plugintm/disable_chatty_ohai
Signed-off-by: Thom May <thom@chef.io>
-rw-r--r--lib/chef/provider/service/systemd.rb2
-rw-r--r--lib/chef/provider/systemd_unit.rb3
-rw-r--r--spec/unit/provider/service/systemd_service_spec.rb12
-rw-r--r--spec/unit/provider/systemd_unit_spec.rb12
4 files changed, 7 insertions, 22 deletions
diff --git a/lib/chef/provider/service/systemd.rb b/lib/chef/provider/service/systemd.rb
index 2da35b3b9e..fa9d381267 100644
--- a/lib/chef/provider/service/systemd.rb
+++ b/lib/chef/provider/service/systemd.rb
@@ -77,7 +77,7 @@ class Chef::Provider::Service::Systemd < Chef::Provider::Service::Simple
def get_systemctl_options_args
if new_resource.user
- uid = node["etc"]["passwd"][new_resource.user]["uid"]
+ uid = Etc.getpwuid(new_resource.user).uid
options = {
:environment => {
"DBUS_SESSION_BUS_ADDRESS" => "unix:path=/run/user/#{uid}/bus",
diff --git a/lib/chef/provider/systemd_unit.rb b/lib/chef/provider/systemd_unit.rb
index e1853bd984..dcef93bfde 100644
--- a/lib/chef/provider/systemd_unit.rb
+++ b/lib/chef/provider/systemd_unit.rb
@@ -227,10 +227,11 @@ class Chef
def systemctl_opts
@systemctl_opts ||=
if new_resource.user
+ uid = Etc.getpwuid(new_resource.user).uid
{
:user => new_resource.user,
:environment => {
- "DBUS_SESSION_BUS_ADDRESS" => "unix:path=/run/user/#{node['etc']['passwd'][new_resource.user]['uid']}/bus",
+ "DBUS_SESSION_BUS_ADDRESS" => "unix:path=/run/user/#{uid}/bus",
},
}
else
diff --git a/spec/unit/provider/service/systemd_service_spec.rb b/spec/unit/provider/service/systemd_service_spec.rb
index cbd8e88022..a9c11b7c18 100644
--- a/spec/unit/provider/service/systemd_service_spec.rb
+++ b/spec/unit/provider/service/systemd_service_spec.rb
@@ -21,16 +21,7 @@ require "spec_helper"
describe Chef::Provider::Service::Systemd do
- let(:node) do
- node = Chef::Node.new
- node.default["etc"] = Hash.new
- node.default["etc"]["passwd"] = {
- "joe" => {
- "uid" => 10000,
- },
- }
- node
- end
+ let(:node) { Chef::Node.new }
let(:events) { Chef::EventDispatch::Dispatcher.new }
@@ -56,6 +47,7 @@ describe Chef::Provider::Service::Systemd do
before(:each) do
allow(Chef::Resource::Service).to receive(:new).with(service_name).and_return(current_resource)
+ allow(Etc).to receive(:getpwuid).and_return(OpenStruct.new(uid: 10000))
end
describe "load_current_resource" do
diff --git a/spec/unit/provider/systemd_unit_spec.rb b/spec/unit/provider/systemd_unit_spec.rb
index 6909c9d86b..8e19503814 100644
--- a/spec/unit/provider/systemd_unit_spec.rb
+++ b/spec/unit/provider/systemd_unit_spec.rb
@@ -19,17 +19,8 @@
require "spec_helper"
describe Chef::Provider::SystemdUnit do
- let(:node) do
- Chef::Node.new.tap do |n|
- n.default["etc"] = {}
- n.default["etc"]["passwd"] = {
- "joe" => {
- "uid" => 1_000,
- },
- }
- end
- end
+ let(:node) { Chef::Node.new }
let(:events) { Chef::EventDispatch::Dispatcher.new }
let(:run_context) { Chef::RunContext.new(node, {}, events) }
let(:unit_name) { "sysstat-collect\\x2d.timer" }
@@ -83,6 +74,7 @@ describe Chef::Provider::SystemdUnit do
end
before(:each) do
+ allow(Etc).to receive(:getpwuid).and_return(OpenStruct.new(uid: 1000))
allow(Chef::Resource::SystemdUnit).to receive(:new)
.with(unit_name)
.and_return(current_resource)