summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Barnett <jason.w.barnett@gmail.com>2019-04-10 08:15:43 -0400
committerJason Barnett <jason.w.barnett@gmail.com>2019-04-15 18:07:21 -0400
commitb49cfbe7b8f51bd04e255cf74389eaed4f54f63f (patch)
treeec6c78e915a4faa473f633ec5f4664bea00bf910
parent2fe2f5029df438ff92274b3240df5f5bee10c067 (diff)
downloadchef-b49cfbe7b8f51bd04e255cf74389eaed4f54f63f.tar.gz
Prevent accidentally configuring windows_service properties
Signed-off-by: Jason Barnett <jason.w.barnett@gmail.com>
-rw-r--r--lib/chef/provider/service/windows.rb18
-rw-r--r--spec/unit/provider/service/windows_spec.rb14
2 files changed, 4 insertions, 28 deletions
diff --git a/lib/chef/provider/service/windows.rb b/lib/chef/provider/service/windows.rb
index 23be4c0396..4759e34153 100644
--- a/lib/chef/provider/service/windows.rb
+++ b/lib/chef/provider/service/windows.rb
@@ -208,11 +208,6 @@ class Chef::Provider::Service::Windows < Chef::Provider::Service
return
end
- # Until #6300 is solved this is required
- if new_resource.run_as_user == new_resource.class.properties[:run_as_user].default
- new_resource.run_as_user = new_resource.class.properties[:run_as_user].default
- end
-
converge_if_changed :service_type, :startup_type, :error_control,
:binary_path_name, :load_order_group, :dependencies,
:run_as_user, :display_name, :description do
@@ -400,16 +395,11 @@ class Chef::Provider::Service::Windows < Chef::Provider::Service
end
def converge_delayed_start
- config = {}
- config[:service_name] = new_resource.service_name
- config[:delayed_start] = new_resource.delayed_start ? 1 : 0
-
- # Until #6300 is solved this is required
- if new_resource.delayed_start == new_resource.class.properties[:delayed_start].default
- new_resource.delayed_start = new_resource.class.properties[:delayed_start].default
- end
-
converge_if_changed :delayed_start do
+ config = {}
+ config[:service_name] = new_resource.service_name
+ config[:delayed_start] = new_resource.delayed_start ? 1 : 0
+
Win32::Service.configure(config)
end
end
diff --git a/spec/unit/provider/service/windows_spec.rb b/spec/unit/provider/service/windows_spec.rb
index 2f955a3e13..9145a0caf4 100644
--- a/spec/unit/provider/service/windows_spec.rb
+++ b/spec/unit/provider/service/windows_spec.rb
@@ -354,13 +354,6 @@ describe Chef::Provider::Service::Windows, "load_current_resource", :windows_onl
allow(Win32::Service).to receive(:configure).with(anything).and_return(true)
end
- it "works around #6300 if run_as_user is default" do
- new_resource.run_as_user = new_resource.class.properties[:run_as_user].default
- expect(provider.new_resource).to receive(:run_as_user=)
- .with(new_resource.class.properties[:run_as_user].default)
- provider.action_configure
- end
-
# properties that are Strings
%i{binary_path_name load_order_group dependencies run_as_user
display_name description}.each do |attr|
@@ -436,13 +429,6 @@ describe Chef::Provider::Service::Windows, "load_current_resource", :windows_onl
allow(Win32::Service).to receive(:configure).and_return(true)
end
- it "works around #6300 if delayed_start is default" do
- new_resource.delayed_start = new_resource.class.properties[:delayed_start].default
- expect(provider.new_resource).to receive(:delayed_start=)
- .with(new_resource.class.properties[:delayed_start].default)
- provider.send(:converge_delayed_start)
- end
-
context "delayed start needs to be updated" do
before do
provider.current_resource.delayed_start = false