From 68930e5dc875156a7cab7a0786cbd13c1543fea4 Mon Sep 17 00:00:00 2001 From: Robert Tarrall Date: Thu, 1 May 2014 10:37:39 -0600 Subject: Fix upstart provider so parameters work correctly --- lib/chef/provider/service/upstart.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/chef/provider/service/upstart.rb b/lib/chef/provider/service/upstart.rb index 98780e4b72..c81a8a50dc 100644 --- a/lib/chef/provider/service/upstart.rb +++ b/lib/chef/provider/service/upstart.rb @@ -43,7 +43,8 @@ class Chef run_context.node - @job = @new_resource.service_name + # dup so we can mutate @job + @job = @new_resource.service_name.dup if @new_resource.parameters @new_resource.parameters.each do |key, value| -- cgit v1.2.1 From 562094d27f7e772ea7094f26c63ae19e06840817 Mon Sep 17 00:00:00 2001 From: Robert Tarrall Date: Wed, 7 May 2014 17:10:39 -0600 Subject: CHEF-5265: ensure service_name isn't clobbered by parameters --- spec/unit/provider/service/upstart_service_spec.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/spec/unit/provider/service/upstart_service_spec.rb b/spec/unit/provider/service/upstart_service_spec.rb index 154527a7da..efe4e0481f 100644 --- a/spec/unit/provider/service/upstart_service_spec.rb +++ b/spec/unit/provider/service/upstart_service_spec.rb @@ -88,6 +88,13 @@ describe Chef::Provider::Service::Upstart do @provider.load_current_resource end + it "should not change the service name when parameters are specified" do + @new_resource.parameters({ "OSD_ID" => "2" }) + @provider = Chef::Provider::Service::Upstart.new(@new_resource, @run_context) + @provider.current_resource = @current_resource + @new_resource.service_name.should == @current_resource.service_name + end + it "should run '/sbin/status rsyslog'" do @provider.should_receive(:popen4).with("/sbin/status rsyslog").and_return(@status) @provider.load_current_resource -- cgit v1.2.1