in itchef/cookbooks/cpe_chrome/resources/cpe_chrome_posix.rb [223:282]
def manage_chrome_extensions_macos(extprefs)
return if extprefs.empty?
prefix = node['cpe_profiles']['prefix']
organization = node['organization'] ? node['organization'] : 'Facebook'
extprefs.each do |k, v|
chrome_ext_profile = {
'PayloadIdentifier' => "#{prefix}.browsers.chrome.extension.#{k}",
'PayloadRemovalDisallowed' => true,
'PayloadScope' => 'System',
'PayloadType' => 'Configuration',
'PayloadUUID' => v['profile_uuid'],
'PayloadOrganization' => organization,
'PayloadVersion' => 1,
'PayloadDisplayName' => "Chrome Extension (#{v['display_name']})",
'PayloadContent' => [{
'PayloadType' => "com.google.Chrome.extensions.#{k}",
'PayloadVersion' => 1,
'PayloadIdentifier' => "#{prefix}.browsers.chrome.extension.settings.#{k}",
'PayloadUUID' => v['payload_uuid'],
'PayloadEnabled' => true,
'PayloadDisplayName' => "Chrome Extension (#{v['display_name']})",
}],
}
v['profile'].each do |k_ext, v_ext|
chrome_ext_profile['PayloadContent'][0][k_ext] = v_ext['value']
end
node.default['cpe_profiles']["#{prefix}.browsers.chrome.extension.#{k}"] = chrome_ext_profile
end
if node.installed?('com.google.Chrome.canary')
prefix = node['cpe_profiles']['prefix']
organization = node['organization'] ? node['organization'] : 'Facebook'
extprefs.each do |k, v|
canary_ext_profile = {
'PayloadIdentifier' => "#{prefix}.browsers.chromecanary.extension.#{k}",
'PayloadRemovalDisallowed' => true,
'PayloadScope' => 'System',
'PayloadType' => 'Configuration',
'PayloadUUID' => v['profile_uuid'],
'PayloadOrganization' => organization,
'PayloadVersion' => 1,
'PayloadDisplayName' => "Chrome Extension (#{v['display_name']})",
'PayloadContent' => [{
'PayloadType' => "com.google.Chrome.canary.extensions.#{k}",
'PayloadVersion' => 1,
'PayloadIdentifier' => "#{prefix}.browsers.chromecanary.extension.settings.#{k}",
'PayloadUUID' => v['payload_uuid'],
'PayloadEnabled' => true,
'PayloadDisplayName' => "Chrome Canary Extension (#{v['display_name']})",
}],
}
v['profile'].each do |k_ext, v_ext|
canary_ext_profile['PayloadContent'][0][k_ext] = v_ext['value']
end
node.default['cpe_profiles']["#{prefix}.browsers.chromecanary.extension.#{k}"] = canary_ext_profile
end
end
end