1
0
Fork 0
docsearch/docs/Rakefile
2018-02-07 10:56:52 +01:00

50 lines
1.2 KiB
Ruby

require 'dotenv'
require 'yaml'
require_relative './lib/google_analytics_downloader.rb'
Dotenv.load('.env')
task :build do
sh "STAGE=#{ENV['STAGE'] || 'beta'} bundle exec middleman build"
end
task :s3_sync do
sh "STAGE=#{ENV['STAGE'] || 'beta'} bundle exec middleman s3_sync"
end
task :purge_cache do
stage = ENV['STAGE'] || 'beta'
# if stage == 'production'
sh <<-SHELL
curl -X DELETE "https://api.cloudflare.com/client/v4/zones/#{ENV['CLOUDFLARE_ZONE']}/purge_cache" \
-H "X-Auth-Email: #{ENV['CLOUDFLARE_AUTH_EMAIL']}" \
-H "X-Auth-Key: #{ENV['CLOUDFLARE_AUTH_KEY']}" \
-H "Content-Type: application/json" \
--data '{"tags":["algoliaweb-doc--#{stage}"]}'
SHELL
# else
# puts "Not in production, not purging cache"
# end
end
task :deploy do
Rake::Task[:build].invoke
Rake::Task[:s3_sync].invoke
Rake::Task[:purge_cache].invoke
end
task :production do
ENV['STAGE'] = 'production'
end
task :beta do
ENV['STAGE'] = 'beta'
end
task :download_google_analytics_data do
file = File.expand_path(File.join(__FILE__, '..', 'app_data', 'google_analytics.yml'))
File.open(file, 'w') do |f|
f << GoogleAnalyticsDownloader.fetch.to_yaml
end
end