diff options
author | Phil Dibowitz <phil@ipom.com> | 2015-07-23 10:09:52 -0700 |
---|---|---|
committer | Phil Dibowitz <phil@ipom.com> | 2015-07-23 10:09:52 -0700 |
commit | d678e7f3849091d3ef384847ffd6abb582c65afb (patch) | |
tree | bb39c5c8c67eeda037af7ef8c6d0a4ad1f058e12 | |
parent | 694c4d6af2e0a14d5fc6e59718f0aa9dfeb15c89 (diff) | |
parent | fbadd31f51d316c27524b5b1e5af158f4375048c (diff) | |
download | chef-d678e7f3849091d3ef384847ffd6abb582c65afb.tar.gz |
Merge pull request #3594 from natewalck/master
Added support for 10.11 and added function for evaluating OS X version...
-rw-r--r-- | lib/chef/provider/service/macosx.rb | 6 | ||||
-rw-r--r-- | spec/unit/provider/service/macosx_spec.rb | 8 |
2 files changed, 9 insertions, 5 deletions
diff --git a/lib/chef/provider/service/macosx.rb b/lib/chef/provider/service/macosx.rb index 7324822eff..0a8fca4262 100644 --- a/lib/chef/provider/service/macosx.rb +++ b/lib/chef/provider/service/macosx.rb @@ -42,6 +42,10 @@ class Chef PLIST_DIRS = gather_plist_dirs + def this_version_or_newer?(this_version) + Gem::Version.new(node['platform_version']) >= Gem::Version.new(this_version) + end + def load_current_resource @current_resource = Chef::Resource::MacosxService.new(@new_resource.name) @current_resource.service_name(@new_resource.service_name) @@ -56,7 +60,7 @@ class Chef @console_user = Etc.getlogin Chef::Log.debug("#{new_resource} console_user: '#{@console_user}'") cmd = "su " - param = !node['platform_version'].include?('10.10') ? '-l ' : '' + param = this_version_or_newer?('10.10') ? '' : '-l ' @base_user_cmd = cmd + param + "#{@console_user} -c" # Default LauchAgent session should be Aqua @session_type = 'Aqua' if @session_type.nil? diff --git a/spec/unit/provider/service/macosx_spec.rb b/spec/unit/provider/service/macosx_spec.rb index 597845a558..54183bdc3d 100644 --- a/spec/unit/provider/service/macosx_spec.rb +++ b/spec/unit/provider/service/macosx_spec.rb @@ -60,15 +60,15 @@ XML ["Daemon", "Agent"].each do |service_type| ["redis-server", "io.redis.redis-server"].each do |service_name| - ["10.9", "10.10"].each do |platform_version| + ["10.9", "10.10", "10.11"].each do |platform_version| let(:plist) {'/Library/LaunchDaemons/io.redis.redis-server.plist'} let(:session) { StringIO.new } if service_type == 'Agent' let(:plist) {'/Library/LaunchAgents/io.redis.redis-server.plist'} let(:session) {'-S Aqua '} - let(:su_cmd) {'su igor -c'} - if platform_version != "10.10" - let(:su_cmd) {'su -l igor -c'} + let(:su_cmd) {'su -l igor -c'} + if platform_version == "10.9" + let(:su_cmd) {'su igor -c'} end end let(:service_label) {'io.redis.redis-server'} |