diff options
author | Mike Dodge <mikedodge04@fb.com> | 2015-12-21 11:18:15 -0800 |
---|---|---|
committer | Mike Dodge <mikedodge04@fb.com> | 2016-02-15 12:48:30 -0800 |
commit | de6857c4445fb1fb92139f0f6e1d9e654e4f28c2 (patch) | |
tree | fdf35a071c1440819f9b8f2a1025966150ebf775 /lib | |
parent | 66c4f6af84f33ac40ff2912a61ee9a3be2ca878c (diff) | |
download | chef-de6857c4445fb1fb92139f0f6e1d9e654e4f28c2.tar.gz |
added specs
Diffstat (limited to 'lib')
-rw-r--r-- | lib/chef/provider/launchd.rb | 15 | ||||
-rw-r--r-- | lib/chef/resource/launchd.rb | 16 |
2 files changed, 14 insertions, 17 deletions
diff --git a/lib/chef/provider/launchd.rb b/lib/chef/provider/launchd.rb index a6f54e7627..38304355c7 100644 --- a/lib/chef/provider/launchd.rb +++ b/lib/chef/provider/launchd.rb @@ -104,17 +104,15 @@ class Chef res.group(@group) if @group res.mode(@mode) if @mode res.owner(@owner) if @owner - res.source(@source) if @source res end def cookbook_file_resource res = Chef::Resource::CookbookFile.new(@path, run_context) + res.cookbook_name = @cookbook if @cookbook res.name(@path) res.backup(@backup) if @backup - res.content(@content) if @content - res.cookbook_name = @cookbook if @cookbook res.group(@group) if @group res.mode(@mode) if @mode res.owner(@owner) if @owner @@ -124,21 +122,16 @@ class Chef end def define_resource_requirements - super requirements.assert( :create, :create_if_missing, :delete, :enable, :disable ) do |a| type = @new_resource.type.to_s - a.assertion { !['daemon', 'agent'].include?(type) } - a.failure_message( - Chef::Exceptions::UnsupportedAction, - "service_type must be 'daemon' or 'agent'" - ) + a.assertion { ['daemon', 'agent'].include?(type) } + error_msg = 'type must be daemon or agent' + a.failure_message Chef::Exceptions::ValidationFailed, error_msg end end - private - def content? if @new_resource.hash @new_resource.hash.to_plist diff --git a/lib/chef/resource/launchd.rb b/lib/chef/resource/launchd.rb index 44ceaf33f9..0ae1425d4f 100644 --- a/lib/chef/resource/launchd.rb +++ b/lib/chef/resource/launchd.rb @@ -49,7 +49,7 @@ class Chef def source(arg = nil) set_or_return( :source, arg, - :kind_of => [ String, Array ] + :kind_of => [String, Array] ) end @@ -77,38 +77,42 @@ class Chef def backup(arg=nil) set_or_return( :backup, arg, - :kind_of => [ Integer, FalseClass ] + :kind_of => [Integer, FalseClass] ) end def group(arg = nil) set_or_return( :group, arg, - :kind_of => [ String, Integer ] + :kind_of => [String, Integer] ) end def mode(arg = nil) set_or_return( :mode, arg, - :kind_of => [ String, Integer ] + :kind_of => [String, Integer] ) end def owner(arg = nil) set_or_return( :owner, arg, - :kind_of => [ String, Integer ] + :kind_of => [String, Integer] ) end def type(type = nil) - type = type ? type.downcase : nil + type = type ? type.downcase : 'daemon' if type == 'daemon' @path = "/Library/LaunchDaemons/#{name}.plist" elsif type == 'agent' @path = "/Library/LaunchAgents/#{name}.plist" + else + error_msg = 'type must be daemon or agent' + raise Chef::Exceptions::ValidationFailed, error_msg end + type end def abandon_process_group(arg = nil) |