chef/cookbooks/cpe_nudge/libraries/cpe_nudge.rb (22 lines of code) (raw):
#
# Cookbook:: cpe_nudge
# Library:: cpe_nudge
#
# vim: syntax=ruby:expandtab:shiftwidth=2:softtabstop=2:tabstop=2
#
# Copyright:: (c) 2019-present, Uber Technologies, Inc.
# All rights reserved.
#
# This source code is licensed under the Apache 2.0 license found in the
# LICENSE file in the root directory of this source tree.
#
class Chef
class Node
# This portion is taken from cpe_launchd. Since we use cpe_launchd to
# create our launch agent, the label specified in the attributes will not
# match the actual label/path that's created. Doing this will result in
# the right file being targeted.
def nudge_launchctl_label(nudge_type, identifier_type)
label = node['cpe_nudge']["nudge-#{nudge_type}"][identifier_type]
if label.start_with?('com')
name = label.split('.')
name.delete('com')
label = name.join('.')
label = "#{node['cpe_launchd']['prefix']}.#{label}"
end
label
end
def nudge_launchctl_path(nudge_type, identifier_type)
label = nudge_launchctl_label(nudge_type, identifier_type)
if identifier_type == 'launchagent_identifier'
::File.join('/Library/LaunchAgents', "#{label}.plist")
else
::File.join('/Library/LaunchDaemons', "#{label}.plist")
end
end
end
end