Skip to content

Instantly share code, notes, and snippets.

@seeingidog
Created November 17, 2011 19:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save seeingidog/1374157 to your computer and use it in GitHub Desktop.
Save seeingidog/1374157 to your computer and use it in GitHub Desktop.
require 'rubygems'
require 'fog'
require 'net/http'
require 'uri'
hostname = ENV["CDNSPARK_CDN_HOSTNAME"]
bucket = ENV["CDNSPARK_S3_ORIGIN"]
access_key_id = ENV["CDNSPARK_ACCESS_ID"]
secret_access_key = ENV["CDNSPARK_SECRET_KEY"]
puts "Putting file on Origin bucket"
sleep 10
begin
storage = Fog::Storage.new(:provider => 'AWS', :aws_access_key_id => access_key_id, :aws_secret_access_key => secret_access_key)
storage.get_bucket(bucket)
storage.put_object(bucket, 'cdnspark_test', 'test stuff in a file!', {"x-amz-acl" => 'public-read'})
puts "Test file placed on CDN"
rescue => e
abort "Failed to put file on bucket: #{e.message}"
end
puts "Waiting for file to be propogated throughout CDN"
sleep 300
puts "Testing file is available on CDN"
begin
Net::HTTP.get_print(hostname, '/cdnspark_test')
storage.delete_object(bucket, 'cdnspark_test')
rescue => e
abort "Failed to get CDN object: #{e.message}"
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment