in chef/cookbooks/cpe_filebeat/resources/cpe_filebeat.rb [71:117]
def install
zip_info.reject { |_k, v| v.nil? }
return if zip_info.nil? || zip_info.empty?
unhealthy_count = filebeat_unhealthy_count
reinstall_count = filebeat_reinstall_count
repair = false
filebeat_running? ? unhealthy_count = 0 : unhealthy_count += 1
if unhealthy_count > unhealthy_limit
unhealthy_count = 0
reinstall_count += 1
repair = true
end
cleanup if !current_version? || repair
zip_name = value_for_platform_family(
'mac_os_x' => "filebeat-#{zip_info['version']}-darwin-x86_64.zip",
'debian' => "filebeat-#{zip_info['version']}-linux-x86_64.zip",
'windows' => "filebeat-#{zip_info['version']}-windows-x86_64.zip",
'default' => nil,
)
create_filebeat_directory
cpe_remote_zip 'filebeat_zip' do
zip_name zip_name
zip_checksum zip_info['checksum']
folder_name 'filebeat'
extract_location filebeat_dir
end
file filebeat_bin do
mode '0755'
owner root_owner
group node['root_group']
only_if { macos? }
only_if { !unix_binary? }
end
set_filebeat_health_history(unhealthy_count, reinstall_count)
end