21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/middleman-cdn/cdns/maxcdn.rb', line 21
def invalidate(options, files, all: false)
options[:alias] ||= ENV['MAXCDN_ALIAS']
options[:consumer_key] ||= ENV['MAXCDN_CONSUMER_KEY']
options[:consumer_secret] ||= ENV['MAXCDN_CONSUMER_SECRET']
[:alias, :consumer_key, :consumer_secret, :zone_id].each do |key|
if options[key].blank?
say_status(ANSI.red{ "Error: Configuration key maxcdn[:#{key}] is missing." })
raise
end
end
maxcdn = ::MaxCDN::Client.new(options[:alias], options[:consumer_key], options[:consumer_secret])
begin
say_status("Invalidating #{files.count} files...", newline: false)
maxcdn.purge(options[:zone_id], files)
rescue => e
say_status(ANSI.red{ ", " + "error: #{e.message}" }, header: false)
else
say_status(ANSI.green{ "✔" }, header: false)
end
end
|