Skip to content

Instantly share code, notes, and snippets.

@lstoll
Created July 10, 2011 14:47
Show Gist options
  • Save lstoll/1074591 to your computer and use it in GitHub Desktop.
Save lstoll/1074591 to your computer and use it in GitHub Desktop.
Fog storage example on Ninefold

Fog storage tutorial on Ninefold

Fog storage tutorial sample running on Ninefold

Keys can be obtained from the portal under 'My Details'

Clone this gist, then:

bundle install
./storage_tut.rb <Atmos Access Token> <Atmos shared secret>
source :rubygems
gem 'fog', :git => 'https://github.com/ninefold/fog.git', :branch => 'ninefold_storage'
#gem 'fog', :path => '/Users/lstoll/dev/ninefold/fog'
#!/usr/bin/env ruby
require 'rubygems'
require 'bundler'
Bundler.require
# From http://fog.io/0.9.0/storage/
unless ARGV.size == 2
puts "Pass in the Access Token and Shared Secret on the command line. See _README.md"
exit
end
# create a connection
connection = Fog::Storage.new({
:provider => 'Ninefold',
:ninefold_storage_token => ARGV[0],
:ninefold_storage_secret => ARGV[1]
})
# First, a place to contain the glorious details
directory = connection.directories.create(
:key => "fog-demo-#{Time.now.to_i}", # globally unique name
:public => true
)
# list directories
p connection.directories
# upload that resume
file = directory.files.create(
:key => 'super_page.html',
:body => File.open("super_page.html"),
:public => true,
:content_type => 'text/html'
)
# Re-upload, demo's updating
file.body = File.open("super_page.html")
file.save
# Write the public URL to this file
puts file.public_url
# Wait, then destroy
puts "Test the URL, then press return to remove them.."
STDIN.gets
file.destroy
directory.destroy
<html>
<body>
<h1>SUPER!</h1>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment