fog 0.0.31 → 0.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.document +0 -2
 - data/Rakefile +12 -7
 - data/VERSION +1 -1
 - data/bin/fog +16 -18
 - data/fog.gemspec +34 -8
 - data/lib/fog.rb +11 -0
 - data/lib/fog/aws/models/ec2/address.rb +4 -0
 - data/lib/fog/aws/models/ec2/instance.rb +17 -0
 - data/lib/fog/aws/models/ec2/key_pair.rb +4 -0
 - data/lib/fog/aws/models/ec2/security_group.rb +8 -0
 - data/lib/fog/aws/models/ec2/snapshot.rb +7 -1
 - data/lib/fog/aws/models/ec2/volume.rb +9 -1
 - data/lib/fog/aws/models/s3/bucket.rb +10 -0
 - data/lib/fog/aws/models/s3/buckets.rb +10 -4
 - data/lib/fog/aws/models/s3/object.rb +5 -0
 - data/lib/fog/aws/requests/ec2/allocate_address.rb +1 -1
 - data/lib/fog/aws/requests/ec2/associate_address.rb +2 -2
 - data/lib/fog/aws/requests/ec2/attach_volume.rb +2 -2
 - data/lib/fog/aws/requests/ec2/authorize_security_group_ingress.rb +1 -1
 - data/lib/fog/aws/requests/ec2/create_key_pair.rb +2 -2
 - data/lib/fog/aws/requests/ec2/create_security_group.rb +2 -2
 - data/lib/fog/aws/requests/ec2/create_snapshot.rb +2 -2
 - data/lib/fog/aws/requests/ec2/create_volume.rb +1 -1
 - data/lib/fog/aws/requests/ec2/delete_key_pair.rb +1 -1
 - data/lib/fog/aws/requests/ec2/delete_security_group.rb +2 -2
 - data/lib/fog/aws/requests/ec2/delete_snapshot.rb +2 -2
 - data/lib/fog/aws/requests/ec2/delete_volume.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_addresses.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_availability_zones.rb +1 -1
 - data/lib/fog/aws/requests/ec2/describe_images.rb +1 -1
 - data/lib/fog/aws/requests/ec2/describe_instances.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_key_pairs.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_regions.rb +1 -1
 - data/lib/fog/aws/requests/ec2/describe_security_groups.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_snapshots.rb +2 -2
 - data/lib/fog/aws/requests/ec2/describe_volumes.rb +2 -2
 - data/lib/fog/aws/requests/ec2/detach_volume.rb +2 -2
 - data/lib/fog/aws/requests/ec2/disassociate_address.rb +2 -2
 - data/lib/fog/aws/requests/ec2/get_console_output.rb +2 -2
 - data/lib/fog/aws/requests/ec2/reboot_instances.rb +2 -2
 - data/lib/fog/aws/requests/ec2/release_address.rb +2 -2
 - data/lib/fog/aws/requests/ec2/revoke_security_group_ingress.rb +1 -1
 - data/lib/fog/aws/requests/ec2/run_instances.rb +1 -1
 - data/lib/fog/aws/requests/ec2/terminate_instances.rb +2 -2
 - data/lib/fog/aws/requests/s3/copy_object.rb +2 -2
 - data/lib/fog/aws/requests/s3/delete_bucket.rb +3 -3
 - data/lib/fog/aws/requests/s3/delete_object.rb +8 -7
 - data/lib/fog/aws/requests/s3/get_bucket.rb +2 -2
 - data/lib/fog/aws/requests/s3/get_bucket_location.rb +2 -2
 - data/lib/fog/aws/requests/s3/get_object.rb +2 -2
 - data/lib/fog/aws/requests/s3/get_request_payment.rb +2 -2
 - data/lib/fog/aws/requests/s3/get_service.rb +1 -1
 - data/lib/fog/aws/requests/s3/put_bucket.rb +8 -6
 - data/lib/fog/aws/requests/s3/put_object.rb +9 -9
 - data/lib/fog/aws/requests/s3/put_request_payment.rb +2 -2
 - data/lib/fog/aws/requests/simpledb/batch_put_attributes.rb +2 -2
 - data/lib/fog/aws/requests/simpledb/create_domain.rb +1 -1
 - data/lib/fog/aws/requests/simpledb/delete_attributes.rb +2 -2
 - data/lib/fog/aws/requests/simpledb/delete_domain.rb +1 -1
 - data/lib/fog/aws/requests/simpledb/domain_metadata.rb +2 -2
 - data/lib/fog/aws/requests/simpledb/get_attributes.rb +2 -2
 - data/lib/fog/aws/requests/simpledb/list_domains.rb +1 -1
 - data/lib/fog/aws/s3.rb +1 -12
 - data/lib/fog/collection.rb +16 -8
 - data/lib/fog/model.rb +36 -14
 - data/lib/fog/rackspace/models/servers/image.rb +40 -0
 - data/lib/fog/rackspace/models/servers/images.rb +50 -0
 - data/lib/fog/rackspace/models/servers/server.rb +18 -2
 - data/lib/fog/rackspace/requests/servers/create_image.rb +18 -1
 - data/lib/fog/rackspace/requests/servers/create_server.rb +5 -5
 - data/lib/fog/rackspace/requests/servers/delete_image.rb +16 -1
 - data/lib/fog/rackspace/requests/servers/delete_server.rb +4 -4
 - data/lib/fog/rackspace/requests/servers/get_server_details.rb +2 -2
 - data/lib/fog/rackspace/requests/servers/list_addresses.rb +2 -2
 - data/lib/fog/rackspace/requests/servers/list_images.rb +10 -0
 - data/lib/fog/rackspace/requests/servers/list_images_detail.rb +16 -1
 - data/lib/fog/rackspace/requests/servers/list_private_addresses.rb +2 -2
 - data/lib/fog/rackspace/requests/servers/list_public_addresses.rb +2 -2
 - data/lib/fog/rackspace/requests/servers/list_servers.rb +1 -1
 - data/lib/fog/rackspace/requests/servers/list_servers_detail.rb +2 -2
 - data/lib/fog/rackspace/requests/servers/update_server.rb +2 -2
 - data/lib/fog/rackspace/servers.rb +8 -2
 - data/lib/fog/slicehost.rb +66 -0
 - data/lib/fog/slicehost/parsers/create_slice.rb +29 -0
 - data/lib/fog/slicehost/parsers/get_backups.rb +30 -0
 - data/lib/fog/slicehost/parsers/get_flavors.rb +28 -0
 - data/lib/fog/slicehost/parsers/get_images.rb +28 -0
 - data/lib/fog/slicehost/parsers/get_slices.rb +33 -0
 - data/lib/fog/slicehost/requests/create_slice.rb +50 -0
 - data/lib/fog/slicehost/requests/delete_slice.rb +48 -0
 - data/lib/fog/slicehost/requests/get_backups.rb +38 -0
 - data/lib/fog/slicehost/requests/get_flavors.rb +38 -0
 - data/lib/fog/slicehost/requests/get_images.rb +36 -0
 - data/lib/fog/slicehost/requests/get_slices.rb +44 -0
 - data/spec/aws/requests/s3/put_object_spec.rb +8 -0
 - data/spec/rackspace/requests/servers/create_image_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/create_server_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/delete_image_spec.rb +7 -5
 - data/spec/rackspace/requests/servers/delete_server_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/get_server_details_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/list_addresses_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/list_private_addresses_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/list_public_addresses_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/list_servers_detail_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/list_servers_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/reboot_server_spec.rb +1 -1
 - data/spec/rackspace/requests/servers/update_server_spec.rb +1 -1
 - data/spec/slicehost/requests/create_slice_spec.rb +29 -0
 - data/spec/slicehost/requests/delete_slice_spec.rb +18 -0
 - data/spec/slicehost/requests/get_backups_spec.rb +17 -0
 - data/spec/slicehost/requests/get_flavors_spec.rb +17 -0
 - data/spec/slicehost/requests/get_images_spec.rb +15 -0
 - data/spec/slicehost/requests/get_slices_spec.rb +23 -0
 - data/spec/spec_helper.rb +20 -22
 - metadata +29 -4
 - data/lib/fog/aws/models/s3/owner.rb +0 -18
 
    
        data/.document
    CHANGED
    
    
    
        data/Rakefile
    CHANGED
    
    | 
         @@ -7,7 +7,7 @@ require "#{current_directory}/lib/fog" 
     | 
|
| 
       7 
7 
     | 
    
         
             
            begin
         
     | 
| 
       8 
8 
     | 
    
         
             
              require 'jeweler'
         
     | 
| 
       9 
9 
     | 
    
         
             
              Jeweler::Tasks.new do |gem|
         
     | 
| 
       10 
     | 
    
         
            -
                gem.add_dependency('excon')
         
     | 
| 
      
 10 
     | 
    
         
            +
                gem.add_dependency('excon', '>=0.0.10')
         
     | 
| 
       11 
11 
     | 
    
         
             
                gem.add_dependency('mime-types')
         
     | 
| 
       12 
12 
     | 
    
         
             
                gem.add_dependency('nokogiri')
         
     | 
| 
       13 
13 
     | 
    
         
             
                gem.add_dependency('ruby-hmac')
         
     | 
| 
         @@ -102,12 +102,17 @@ namespace :fog do 
     | 
|
| 
       102 
102 
     | 
    
         
             
              desc 'Provide a sample yaml file for credentials'
         
     | 
| 
       103 
103 
     | 
    
         
             
              task :yml do
         
     | 
| 
       104 
104 
     | 
    
         
             
                puts('Copy the following sample to ~/.fog and fill in with your credentials as needed:')
         
     | 
| 
       105 
     | 
    
         
            -
             
     | 
| 
       106 
     | 
    
         
            -
             
     | 
| 
       107 
     | 
    
         
            -
             
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
       109 
     | 
    
         
            -
             
     | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
      
 105 
     | 
    
         
            +
            yml = <<YML
         
     | 
| 
      
 106 
     | 
    
         
            +
             
     | 
| 
      
 107 
     | 
    
         
            +
            :default:
         
     | 
| 
      
 108 
     | 
    
         
            +
              :aws_access_key_id: INTENTIONALLY_LEFT_BLANK
         
     | 
| 
      
 109 
     | 
    
         
            +
              :aws_secret_access_key: INTENTIONALLY_LEFT_BLANK
         
     | 
| 
      
 110 
     | 
    
         
            +
              :rackspace_api_key: INTENTIONALLY_LEFT_BLANK
         
     | 
| 
      
 111 
     | 
    
         
            +
              :rackspace_username: INTENTIONALLY_LEFT_BLANK
         
     | 
| 
      
 112 
     | 
    
         
            +
              :slicehost_password: INTENTIONALLY_LEFT_BLANK
         
     | 
| 
      
 113 
     | 
    
         
            +
             
     | 
| 
      
 114 
     | 
    
         
            +
            YML
         
     | 
| 
      
 115 
     | 
    
         
            +
                print(yml)
         
     | 
| 
       111 
116 
     | 
    
         
             
              end
         
     | 
| 
       112 
117 
     | 
    
         | 
| 
       113 
118 
     | 
    
         
             
            end
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0.0. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.0.32
         
     | 
    
        data/bin/fog
    CHANGED
    
    | 
         @@ -3,28 +3,18 @@ require File.join(File.dirname(__FILE__), '..', 'lib', 'fog') 
     | 
|
| 
       3 
3 
     | 
    
         
             
            require 'irb'
         
     | 
| 
       4 
4 
     | 
    
         
             
            require 'yaml'
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            def credentials
         
     | 
| 
       7 
     | 
    
         
            -
              @credentials ||= begin
         
     | 
| 
       8 
     | 
    
         
            -
                if ARGV[0] && File.exists?(File.expand_path(ARGV[0]))
         
     | 
| 
       9 
     | 
    
         
            -
                  YAML.load(File.open(File.expand_path(ARGV[0])).read)
         
     | 
| 
       10 
     | 
    
         
            -
                elsif File.exists?(File.expand_path('~/.fog'))
         
     | 
| 
       11 
     | 
    
         
            -
                  YAML.load(File.open(File.expand_path('~/.fog')).read)
         
     | 
| 
       12 
     | 
    
         
            -
                end
         
     | 
| 
       13 
     | 
    
         
            -
              end
         
     | 
| 
       14 
     | 
    
         
            -
            end
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
6 
     | 
    
         
             
            module AWS
         
     | 
| 
       17 
7 
     | 
    
         
             
              class << self
         
     | 
| 
       18 
     | 
    
         
            -
                if credentials[:aws_access_key_id] && credentials[:aws_secret_access_key]
         
     | 
| 
      
 8 
     | 
    
         
            +
                if Fog.credentials[:aws_access_key_id] && Fog.credentials[:aws_secret_access_key]
         
     | 
| 
       19 
9 
     | 
    
         | 
| 
       20 
10 
     | 
    
         
             
                  @@ec2 = Fog::AWS::EC2.new(
         
     | 
| 
       21 
     | 
    
         
            -
                    :aws_access_key_id => credentials[:aws_access_key_id],
         
     | 
| 
       22 
     | 
    
         
            -
                    :aws_secret_access_key => credentials[:aws_secret_access_key]
         
     | 
| 
      
 11 
     | 
    
         
            +
                    :aws_access_key_id => Fog.credentials[:aws_access_key_id],
         
     | 
| 
      
 12 
     | 
    
         
            +
                    :aws_secret_access_key => Fog.credentials[:aws_secret_access_key]
         
     | 
| 
       23 
13 
     | 
    
         
             
                  )
         
     | 
| 
       24 
14 
     | 
    
         | 
| 
       25 
15 
     | 
    
         
             
                  @@s3 = Fog::AWS::S3.new(
         
     | 
| 
       26 
     | 
    
         
            -
                    :aws_access_key_id => credentials[:aws_access_key_id],
         
     | 
| 
       27 
     | 
    
         
            -
                    :aws_secret_access_key => credentials[:aws_secret_access_key]
         
     | 
| 
      
 16 
     | 
    
         
            +
                    :aws_access_key_id => Fog.credentials[:aws_access_key_id],
         
     | 
| 
      
 17 
     | 
    
         
            +
                    :aws_secret_access_key => Fog.credentials[:aws_secret_access_key]
         
     | 
| 
       28 
18 
     | 
    
         
             
                  )
         
     | 
| 
       29 
19 
     | 
    
         | 
| 
       30 
20 
     | 
    
         
             
                  def addresses
         
     | 
| 
         @@ -61,13 +51,21 @@ end 
     | 
|
| 
       61 
51 
     | 
    
         | 
| 
       62 
52 
     | 
    
         
             
            module Rackspace
         
     | 
| 
       63 
53 
     | 
    
         
             
              class << self
         
     | 
| 
       64 
     | 
    
         
            -
                if credentials[:rackspace_api_key] && credentials[:rackspace_username]
         
     | 
| 
      
 54 
     | 
    
         
            +
                if Fog.credentials[:rackspace_api_key] && Fog.credentials[:rackspace_username]
         
     | 
| 
       65 
55 
     | 
    
         | 
| 
       66 
56 
     | 
    
         
             
                  @@servers = Fog::Rackspace::Servers.new(
         
     | 
| 
       67 
     | 
    
         
            -
                    :rackspace_api_key => credentials[:rackspace_api_key],
         
     | 
| 
       68 
     | 
    
         
            -
                    :rackspace_username => credentials[:rackspace_username]
         
     | 
| 
      
 57 
     | 
    
         
            +
                    :rackspace_api_key => Fog.credentials[:rackspace_api_key],
         
     | 
| 
      
 58 
     | 
    
         
            +
                    :rackspace_username => Fog.credentials[:rackspace_username]
         
     | 
| 
       69 
59 
     | 
    
         
             
                  )
         
     | 
| 
       70 
60 
     | 
    
         | 
| 
      
 61 
     | 
    
         
            +
                  def flavors
         
     | 
| 
      
 62 
     | 
    
         
            +
                    @@servers.flavors
         
     | 
| 
      
 63 
     | 
    
         
            +
                  end
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
                  def images
         
     | 
| 
      
 66 
     | 
    
         
            +
                    @@servers.images
         
     | 
| 
      
 67 
     | 
    
         
            +
                  end
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
       71 
69 
     | 
    
         
             
                  def servers
         
     | 
| 
       72 
70 
     | 
    
         
             
                    @@servers.servers
         
     | 
| 
       73 
71 
     | 
    
         
             
                  end
         
     | 
    
        data/fog.gemspec
    CHANGED
    
    | 
         @@ -1,15 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # Generated by jeweler
         
     | 
| 
       2 
     | 
    
         
            -
            # DO NOT EDIT THIS FILE
         
     | 
| 
       3 
     | 
    
         
            -
            # Instead, edit Jeweler::Tasks in Rakefile, and run  
     | 
| 
      
 2 
     | 
    
         
            +
            # DO NOT EDIT THIS FILE DIRECTLY
         
     | 
| 
      
 3 
     | 
    
         
            +
            # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
         
     | 
| 
       4 
4 
     | 
    
         
             
            # -*- encoding: utf-8 -*-
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       7 
7 
     | 
    
         
             
              s.name = %q{fog}
         
     | 
| 
       8 
     | 
    
         
            -
              s.version = "0.0. 
     | 
| 
      
 8 
     | 
    
         
            +
              s.version = "0.0.32"
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         
     | 
| 
       11 
11 
     | 
    
         
             
              s.authors = ["geemus (Wesley Beary)"]
         
     | 
| 
       12 
     | 
    
         
            -
              s.date = %q{2009- 
     | 
| 
      
 12 
     | 
    
         
            +
              s.date = %q{2009-12-03}
         
     | 
| 
       13 
13 
     | 
    
         
             
              s.default_executable = %q{fog}
         
     | 
| 
       14 
14 
     | 
    
         
             
              s.description = %q{brings clouds to you}
         
     | 
| 
       15 
15 
     | 
    
         
             
              s.email = %q{me@geemus.com}
         
     | 
| 
         @@ -47,7 +47,6 @@ Gem::Specification.new do |s| 
     | 
|
| 
       47 
47 
     | 
    
         
             
                 "lib/fog/aws/models/s3/buckets.rb",
         
     | 
| 
       48 
48 
     | 
    
         
             
                 "lib/fog/aws/models/s3/object.rb",
         
     | 
| 
       49 
49 
     | 
    
         
             
                 "lib/fog/aws/models/s3/objects.rb",
         
     | 
| 
       50 
     | 
    
         
            -
                 "lib/fog/aws/models/s3/owner.rb",
         
     | 
| 
       51 
50 
     | 
    
         
             
                 "lib/fog/aws/parsers/ec2/allocate_address.rb",
         
     | 
| 
       52 
51 
     | 
    
         
             
                 "lib/fog/aws/parsers/ec2/attach_volume.rb",
         
     | 
| 
       53 
52 
     | 
    
         
             
                 "lib/fog/aws/parsers/ec2/basic.rb",
         
     | 
| 
         @@ -137,6 +136,8 @@ Gem::Specification.new do |s| 
     | 
|
| 
       137 
136 
     | 
    
         
             
                 "lib/fog/rackspace/files.rb",
         
     | 
| 
       138 
137 
     | 
    
         
             
                 "lib/fog/rackspace/models/servers/flavor.rb",
         
     | 
| 
       139 
138 
     | 
    
         
             
                 "lib/fog/rackspace/models/servers/flavors.rb",
         
     | 
| 
      
 139 
     | 
    
         
            +
                 "lib/fog/rackspace/models/servers/image.rb",
         
     | 
| 
      
 140 
     | 
    
         
            +
                 "lib/fog/rackspace/models/servers/images.rb",
         
     | 
| 
       140 
141 
     | 
    
         
             
                 "lib/fog/rackspace/models/servers/server.rb",
         
     | 
| 
       141 
142 
     | 
    
         
             
                 "lib/fog/rackspace/models/servers/servers.rb",
         
     | 
| 
       142 
143 
     | 
    
         
             
                 "lib/fog/rackspace/requests/files/delete_container.rb",
         
     | 
| 
         @@ -165,6 +166,18 @@ Gem::Specification.new do |s| 
     | 
|
| 
       165 
166 
     | 
    
         
             
                 "lib/fog/rackspace/requests/servers/reboot_server.rb",
         
     | 
| 
       166 
167 
     | 
    
         
             
                 "lib/fog/rackspace/requests/servers/update_server.rb",
         
     | 
| 
       167 
168 
     | 
    
         
             
                 "lib/fog/rackspace/servers.rb",
         
     | 
| 
      
 169 
     | 
    
         
            +
                 "lib/fog/slicehost.rb",
         
     | 
| 
      
 170 
     | 
    
         
            +
                 "lib/fog/slicehost/parsers/create_slice.rb",
         
     | 
| 
      
 171 
     | 
    
         
            +
                 "lib/fog/slicehost/parsers/get_backups.rb",
         
     | 
| 
      
 172 
     | 
    
         
            +
                 "lib/fog/slicehost/parsers/get_flavors.rb",
         
     | 
| 
      
 173 
     | 
    
         
            +
                 "lib/fog/slicehost/parsers/get_images.rb",
         
     | 
| 
      
 174 
     | 
    
         
            +
                 "lib/fog/slicehost/parsers/get_slices.rb",
         
     | 
| 
      
 175 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/create_slice.rb",
         
     | 
| 
      
 176 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/delete_slice.rb",
         
     | 
| 
      
 177 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/get_backups.rb",
         
     | 
| 
      
 178 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/get_flavors.rb",
         
     | 
| 
      
 179 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/get_images.rb",
         
     | 
| 
      
 180 
     | 
    
         
            +
                 "lib/fog/slicehost/requests/get_slices.rb",
         
     | 
| 
       168 
181 
     | 
    
         
             
                 "spec/aws/models/ec2/address_spec.rb",
         
     | 
| 
       169 
182 
     | 
    
         
             
                 "spec/aws/models/ec2/addresses_spec.rb",
         
     | 
| 
       170 
183 
     | 
    
         
             
                 "spec/aws/models/ec2/instance_spec.rb",
         
     | 
| 
         @@ -258,6 +271,12 @@ Gem::Specification.new do |s| 
     | 
|
| 
       258 
271 
     | 
    
         
             
                 "spec/rackspace/requests/servers/list_servers_spec.rb",
         
     | 
| 
       259 
272 
     | 
    
         
             
                 "spec/rackspace/requests/servers/reboot_server_spec.rb",
         
     | 
| 
       260 
273 
     | 
    
         
             
                 "spec/rackspace/requests/servers/update_server_spec.rb",
         
     | 
| 
      
 274 
     | 
    
         
            +
                 "spec/slicehost/requests/create_slice_spec.rb",
         
     | 
| 
      
 275 
     | 
    
         
            +
                 "spec/slicehost/requests/delete_slice_spec.rb",
         
     | 
| 
      
 276 
     | 
    
         
            +
                 "spec/slicehost/requests/get_backups_spec.rb",
         
     | 
| 
      
 277 
     | 
    
         
            +
                 "spec/slicehost/requests/get_flavors_spec.rb",
         
     | 
| 
      
 278 
     | 
    
         
            +
                 "spec/slicehost/requests/get_images_spec.rb",
         
     | 
| 
      
 279 
     | 
    
         
            +
                 "spec/slicehost/requests/get_slices_spec.rb",
         
     | 
| 
       261 
280 
     | 
    
         
             
                 "spec/spec.opts",
         
     | 
| 
       262 
281 
     | 
    
         
             
                 "spec/spec_helper.rb"
         
     | 
| 
       263 
282 
     | 
    
         
             
              ]
         
     | 
| 
         @@ -360,6 +379,12 @@ Gem::Specification.new do |s| 
     | 
|
| 
       360 
379 
     | 
    
         
             
                 "spec/rackspace/requests/servers/list_servers_spec.rb",
         
     | 
| 
       361 
380 
     | 
    
         
             
                 "spec/rackspace/requests/servers/reboot_server_spec.rb",
         
     | 
| 
       362 
381 
     | 
    
         
             
                 "spec/rackspace/requests/servers/update_server_spec.rb",
         
     | 
| 
      
 382 
     | 
    
         
            +
                 "spec/slicehost/requests/create_slice_spec.rb",
         
     | 
| 
      
 383 
     | 
    
         
            +
                 "spec/slicehost/requests/delete_slice_spec.rb",
         
     | 
| 
      
 384 
     | 
    
         
            +
                 "spec/slicehost/requests/get_backups_spec.rb",
         
     | 
| 
      
 385 
     | 
    
         
            +
                 "spec/slicehost/requests/get_flavors_spec.rb",
         
     | 
| 
      
 386 
     | 
    
         
            +
                 "spec/slicehost/requests/get_images_spec.rb",
         
     | 
| 
      
 387 
     | 
    
         
            +
                 "spec/slicehost/requests/get_slices_spec.rb",
         
     | 
| 
       363 
388 
     | 
    
         
             
                 "spec/spec_helper.rb"
         
     | 
| 
       364 
389 
     | 
    
         
             
              ]
         
     | 
| 
       365 
390 
     | 
    
         | 
| 
         @@ -368,20 +393,21 @@ Gem::Specification.new do |s| 
     | 
|
| 
       368 
393 
     | 
    
         
             
                s.specification_version = 3
         
     | 
| 
       369 
394 
     | 
    
         | 
| 
       370 
395 
     | 
    
         
             
                if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
         
     | 
| 
       371 
     | 
    
         
            -
                  s.add_runtime_dependency(%q<excon>, [">= 0"])
         
     | 
| 
      
 396 
     | 
    
         
            +
                  s.add_runtime_dependency(%q<excon>, [">= 0.0.10"])
         
     | 
| 
       372 
397 
     | 
    
         
             
                  s.add_runtime_dependency(%q<mime-types>, [">= 0"])
         
     | 
| 
       373 
398 
     | 
    
         
             
                  s.add_runtime_dependency(%q<nokogiri>, [">= 0"])
         
     | 
| 
       374 
399 
     | 
    
         
             
                  s.add_runtime_dependency(%q<ruby-hmac>, [">= 0"])
         
     | 
| 
       375 
400 
     | 
    
         
             
                else
         
     | 
| 
       376 
     | 
    
         
            -
                  s.add_dependency(%q<excon>, [">= 0"])
         
     | 
| 
      
 401 
     | 
    
         
            +
                  s.add_dependency(%q<excon>, [">= 0.0.10"])
         
     | 
| 
       377 
402 
     | 
    
         
             
                  s.add_dependency(%q<mime-types>, [">= 0"])
         
     | 
| 
       378 
403 
     | 
    
         
             
                  s.add_dependency(%q<nokogiri>, [">= 0"])
         
     | 
| 
       379 
404 
     | 
    
         
             
                  s.add_dependency(%q<ruby-hmac>, [">= 0"])
         
     | 
| 
       380 
405 
     | 
    
         
             
                end
         
     | 
| 
       381 
406 
     | 
    
         
             
              else
         
     | 
| 
       382 
     | 
    
         
            -
                s.add_dependency(%q<excon>, [">= 0"])
         
     | 
| 
      
 407 
     | 
    
         
            +
                s.add_dependency(%q<excon>, [">= 0.0.10"])
         
     | 
| 
       383 
408 
     | 
    
         
             
                s.add_dependency(%q<mime-types>, [">= 0"])
         
     | 
| 
       384 
409 
     | 
    
         
             
                s.add_dependency(%q<nokogiri>, [">= 0"])
         
     | 
| 
       385 
410 
     | 
    
         
             
                s.add_dependency(%q<ruby-hmac>, [">= 0"])
         
     | 
| 
       386 
411 
     | 
    
         
             
              end
         
     | 
| 
       387 
412 
     | 
    
         
             
            end
         
     | 
| 
      
 413 
     | 
    
         
            +
             
     | 
    
        data/lib/fog.rb
    CHANGED
    
    | 
         @@ -35,6 +35,17 @@ module Fog 
     | 
|
| 
       35 
35 
     | 
    
         | 
| 
       36 
36 
     | 
    
         
             
                load "fog/aws.rb"
         
     | 
| 
       37 
37 
     | 
    
         
             
                load "fog/rackspace.rb"
         
     | 
| 
      
 38 
     | 
    
         
            +
                load "fog/slicehost.rb"
         
     | 
| 
      
 39 
     | 
    
         
            +
              end
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
              def self.credentials(path = File.expand_path('~/.fog'))
         
     | 
| 
      
 42 
     | 
    
         
            +
                @credentials ||= begin
         
     | 
| 
      
 43 
     | 
    
         
            +
                  credentials = {}
         
     | 
| 
      
 44 
     | 
    
         
            +
                  File.open(path) do |file|
         
     | 
| 
      
 45 
     | 
    
         
            +
                    credentials = YAML.load(file.read)[:default]
         
     | 
| 
      
 46 
     | 
    
         
            +
                  end
         
     | 
| 
      
 47 
     | 
    
         
            +
                  credentials
         
     | 
| 
      
 48 
     | 
    
         
            +
                end
         
     | 
| 
       38 
49 
     | 
    
         
             
              end
         
     | 
| 
       39 
50 
     | 
    
         | 
| 
       40 
51 
     | 
    
         
             
            end
         
     | 
| 
         @@ -9,11 +9,15 @@ module Fog 
     | 
|
| 
       9 
9 
     | 
    
         
             
                    attribute :instance_id, 'instanceId'
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 12 
     | 
    
         
            +
                      requires :public_ip
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
       12 
14 
     | 
    
         
             
                      connection.release_address(@public_ip)
         
     | 
| 
       13 
15 
     | 
    
         
             
                      true
         
     | 
| 
       14 
16 
     | 
    
         
             
                    end
         
     | 
| 
       15 
17 
     | 
    
         | 
| 
       16 
18 
     | 
    
         
             
                    def instance=(new_instance)
         
     | 
| 
      
 19 
     | 
    
         
            +
                      requires :public_ip
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
       17 
21 
     | 
    
         
             
                      if new_instance
         
     | 
| 
       18 
22 
     | 
    
         
             
                        associate(new_instance)
         
     | 
| 
       19 
23 
     | 
    
         
             
                      else
         
     | 
| 
         @@ -24,10 +24,14 @@ module Fog 
     | 
|
| 
       24 
24 
     | 
    
         
             
                    attribute :user_data
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
                    def addresses
         
     | 
| 
      
 27 
     | 
    
         
            +
                      requires :instance_id
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
       27 
29 
     | 
    
         
             
                      connection.addresses(:instance => self)
         
     | 
| 
       28 
30 
     | 
    
         
             
                    end
         
     | 
| 
       29 
31 
     | 
    
         | 
| 
       30 
32 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 33 
     | 
    
         
            +
                      requires :instance_id
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
       31 
35 
     | 
    
         
             
                      connection.terminate_instances(@instance_id)
         
     | 
| 
       32 
36 
     | 
    
         
             
                      true
         
     | 
| 
       33 
37 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -41,6 +45,8 @@ module Fog 
     | 
|
| 
       41 
45 
     | 
    
         
             
                    # end
         
     | 
| 
       42 
46 
     | 
    
         | 
| 
       43 
47 
     | 
    
         
             
                    def key_pair
         
     | 
| 
      
 48 
     | 
    
         
            +
                      requires :key_name
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
       44 
50 
     | 
    
         
             
                      connection.keypairs.all(@key_name).first
         
     | 
| 
       45 
51 
     | 
    
         
             
                    end
         
     | 
| 
       46 
52 
     | 
    
         | 
| 
         @@ -64,7 +70,16 @@ module Fog 
     | 
|
| 
       64 
70 
     | 
    
         
             
                      end
         
     | 
| 
       65 
71 
     | 
    
         
             
                    end
         
     | 
| 
       66 
72 
     | 
    
         | 
| 
      
 73 
     | 
    
         
            +
                    def reboot
         
     | 
| 
      
 74 
     | 
    
         
            +
                      requires :instance_id
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
                      connection.reboot_instances(@instance_id)
         
     | 
| 
      
 77 
     | 
    
         
            +
                      true
         
     | 
| 
      
 78 
     | 
    
         
            +
                    end
         
     | 
| 
      
 79 
     | 
    
         
            +
             
     | 
| 
       67 
80 
     | 
    
         
             
                    def save
         
     | 
| 
      
 81 
     | 
    
         
            +
                      requires :image_id
         
     | 
| 
      
 82 
     | 
    
         
            +
             
     | 
| 
       68 
83 
     | 
    
         
             
                      options = {}
         
     | 
| 
       69 
84 
     | 
    
         
             
                      if @availability_zone
         
     | 
| 
       70 
85 
     | 
    
         
             
                        options['Placement.AvailabilityZone'] = @availability_zone
         
     | 
| 
         @@ -96,6 +111,8 @@ module Fog 
     | 
|
| 
       96 
111 
     | 
    
         
             
                    end
         
     | 
| 
       97 
112 
     | 
    
         | 
| 
       98 
113 
     | 
    
         
             
                    def volumes
         
     | 
| 
      
 114 
     | 
    
         
            +
                      requires :instance_id
         
     | 
| 
      
 115 
     | 
    
         
            +
             
     | 
| 
       99 
116 
     | 
    
         
             
                      connection.volumes(:instance => self)
         
     | 
| 
       100 
117 
     | 
    
         
             
                    end
         
     | 
| 
       101 
118 
     | 
    
         | 
| 
         @@ -10,11 +10,15 @@ module Fog 
     | 
|
| 
       10 
10 
     | 
    
         
             
                    attribute :material,    'keyMaterial'
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 13 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
       13 
15 
     | 
    
         
             
                      connection.delete_key_pair(@name)
         
     | 
| 
       14 
16 
     | 
    
         
             
                      true
         
     | 
| 
       15 
17 
     | 
    
         
             
                    end
         
     | 
| 
       16 
18 
     | 
    
         | 
| 
       17 
19 
     | 
    
         
             
                    def save
         
     | 
| 
      
 20 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
       18 
22 
     | 
    
         
             
                      data = connection.create_key_pair(@name).body
         
     | 
| 
       19 
23 
     | 
    
         
             
                      new_attributes = data.reject {|key,value| !['keyFingerprint', 'keyMaterial', 'keyName'].include?(key)}
         
     | 
| 
       20 
24 
     | 
    
         
             
                      merge_attributes(new_attributes)
         
     | 
| 
         @@ -11,6 +11,8 @@ module Fog 
     | 
|
| 
       11 
11 
     | 
    
         
             
                    attribute :owner_id,          'ownerId'
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
                    def authorize_group_and_owner(group, owner)
         
     | 
| 
      
 14 
     | 
    
         
            +
                      requires :group_name
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
       14 
16 
     | 
    
         
             
                      connection.authorize_security_group_ingress(
         
     | 
| 
       15 
17 
     | 
    
         
             
                        'GroupName'                   => @group_name,
         
     | 
| 
       16 
18 
     | 
    
         
             
                        'SourceSecurityGroupName'     => group,
         
     | 
| 
         @@ -19,6 +21,8 @@ module Fog 
     | 
|
| 
       19 
21 
     | 
    
         
             
                    end
         
     | 
| 
       20 
22 
     | 
    
         | 
| 
       21 
23 
     | 
    
         
             
                    def authorize_port_range(range, options = {})
         
     | 
| 
      
 24 
     | 
    
         
            +
                      requires :group_name
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
       22 
26 
     | 
    
         
             
                      connection.authorize_security_group_ingress(
         
     | 
| 
       23 
27 
     | 
    
         
             
                        'CidrIp'      => options[:cidr_ip] || '0.0.0.0/0',
         
     | 
| 
       24 
28 
     | 
    
         
             
                        'FromPort'    => range.min,
         
     | 
| 
         @@ -29,11 +33,15 @@ module Fog 
     | 
|
| 
       29 
33 
     | 
    
         
             
                    end
         
     | 
| 
       30 
34 
     | 
    
         | 
| 
       31 
35 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 36 
     | 
    
         
            +
                      requires :group_name
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
       32 
38 
     | 
    
         
             
                      connection.delete_security_group(@group_name)
         
     | 
| 
       33 
39 
     | 
    
         
             
                      true
         
     | 
| 
       34 
40 
     | 
    
         
             
                    end
         
     | 
| 
       35 
41 
     | 
    
         | 
| 
       36 
42 
     | 
    
         
             
                    def save
         
     | 
| 
      
 43 
     | 
    
         
            +
                      requires :group_name
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
       37 
45 
     | 
    
         
             
                      data = connection.create_security_group(@group_name, @group_description).body
         
     | 
| 
       38 
46 
     | 
    
         
             
                      true
         
     | 
| 
       39 
47 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -12,18 +12,24 @@ module Fog 
     | 
|
| 
       12 
12 
     | 
    
         
             
                    attribute :volume_id,    'volumeId'
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
14 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 15 
     | 
    
         
            +
                      requires :snapshot_id
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
       15 
17 
     | 
    
         
             
                      connection.delete_snapshot(@snapshot_id)
         
     | 
| 
       16 
18 
     | 
    
         
             
                      true
         
     | 
| 
       17 
19 
     | 
    
         
             
                    end
         
     | 
| 
       18 
20 
     | 
    
         | 
| 
       19 
21 
     | 
    
         
             
                    def save
         
     | 
| 
       20 
     | 
    
         
            -
                       
     | 
| 
      
 22 
     | 
    
         
            +
                      requires :volume_id
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                      data = connection.create_snapshot(@volume_id).body
         
     | 
| 
       21 
25 
     | 
    
         
             
                      new_attributes = data.reject {|key,value| key == 'requestId'}
         
     | 
| 
       22 
26 
     | 
    
         
             
                      merge_attributes(new_attributes)
         
     | 
| 
       23 
27 
     | 
    
         
             
                      true
         
     | 
| 
       24 
28 
     | 
    
         
             
                    end
         
     | 
| 
       25 
29 
     | 
    
         | 
| 
       26 
30 
     | 
    
         
             
                    def volume
         
     | 
| 
      
 31 
     | 
    
         
            +
                      requires :snapshot_id
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
       27 
33 
     | 
    
         
             
                      connection.describe_volumes(@volume_id)
         
     | 
| 
       28 
34 
     | 
    
         
             
                    end
         
     | 
| 
       29 
35 
     | 
    
         | 
| 
         @@ -23,11 +23,15 @@ module Fog 
     | 
|
| 
       23 
23 
     | 
    
         
             
                    end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
25 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 26 
     | 
    
         
            +
                      requires :volume_id
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
       26 
28 
     | 
    
         
             
                      connection.delete_volume(@volume_id)
         
     | 
| 
       27 
29 
     | 
    
         
             
                      true
         
     | 
| 
       28 
30 
     | 
    
         
             
                    end
         
     | 
| 
       29 
31 
     | 
    
         | 
| 
       30 
32 
     | 
    
         
             
                    def instance=(new_instance)
         
     | 
| 
      
 33 
     | 
    
         
            +
                      requires :volume_id
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
       31 
35 
     | 
    
         
             
                      if new_instance
         
     | 
| 
       32 
36 
     | 
    
         
             
                        attach(new_instance)
         
     | 
| 
       33 
37 
     | 
    
         
             
                      else
         
     | 
| 
         @@ -36,6 +40,8 @@ module Fog 
     | 
|
| 
       36 
40 
     | 
    
         
             
                    end
         
     | 
| 
       37 
41 
     | 
    
         | 
| 
       38 
42 
     | 
    
         
             
                    def save
         
     | 
| 
      
 43 
     | 
    
         
            +
                      requires :availability_zone, :size, :snapshot_id
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
       39 
45 
     | 
    
         
             
                      data = connection.create_volume(@availability_zone, @size, @snapshot_id).body
         
     | 
| 
       40 
46 
     | 
    
         
             
                      new_attributes = data.reject {|key,value| key == 'requestId'}
         
     | 
| 
       41 
47 
     | 
    
         
             
                      merge_attributes(new_attributes)
         
     | 
| 
         @@ -46,7 +52,9 @@ module Fog 
     | 
|
| 
       46 
52 
     | 
    
         
             
                    end
         
     | 
| 
       47 
53 
     | 
    
         | 
| 
       48 
54 
     | 
    
         
             
                    def snapshots
         
     | 
| 
       49 
     | 
    
         
            -
                       
     | 
| 
      
 55 
     | 
    
         
            +
                      requires :volume_id
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
                      connection.snapshots(:volume_id => @volume_id)
         
     | 
| 
       50 
58 
     | 
    
         
             
                    end
         
     | 
| 
       51 
59 
     | 
    
         | 
| 
       52 
60 
     | 
    
         
             
                    private
         
     | 
| 
         @@ -10,6 +10,8 @@ module Fog 
     | 
|
| 
       10 
10 
     | 
    
         
             
                    attribute :owner
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                    def destroy
         
     | 
| 
      
 13 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
       13 
15 
     | 
    
         
             
                      connection.delete_bucket(@name)
         
     | 
| 
       14 
16 
     | 
    
         
             
                      true
         
     | 
| 
       15 
17 
     | 
    
         
             
                    rescue Excon::Errors::NotFound
         
     | 
| 
         @@ -17,6 +19,8 @@ module Fog 
     | 
|
| 
       17 
19 
     | 
    
         
             
                    end
         
     | 
| 
       18 
20 
     | 
    
         | 
| 
       19 
21 
     | 
    
         
             
                    def location
         
     | 
| 
      
 22 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
       20 
24 
     | 
    
         
             
                      data = connection.get_bucket_location(@name)
         
     | 
| 
       21 
25 
     | 
    
         
             
                      data.body['LocationConstraint']
         
     | 
| 
       22 
26 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -35,16 +39,22 @@ module Fog 
     | 
|
| 
       35 
39 
     | 
    
         
             
                    end
         
     | 
| 
       36 
40 
     | 
    
         | 
| 
       37 
41 
     | 
    
         
             
                    def payer
         
     | 
| 
      
 42 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
       38 
44 
     | 
    
         
             
                      data = connection.get_request_payment(@name)
         
     | 
| 
       39 
45 
     | 
    
         
             
                      data.body['Payer']
         
     | 
| 
       40 
46 
     | 
    
         
             
                    end
         
     | 
| 
       41 
47 
     | 
    
         | 
| 
       42 
48 
     | 
    
         
             
                    def payer=(new_payer)
         
     | 
| 
      
 49 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
       43 
51 
     | 
    
         
             
                      connection.put_request_payment(@name, new_payer)
         
     | 
| 
       44 
52 
     | 
    
         
             
                      @payer = new_payer
         
     | 
| 
       45 
53 
     | 
    
         
             
                    end
         
     | 
| 
       46 
54 
     | 
    
         | 
| 
       47 
55 
     | 
    
         
             
                    def save
         
     | 
| 
      
 56 
     | 
    
         
            +
                      requires :name
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       48 
58 
     | 
    
         
             
                      options = {}
         
     | 
| 
       49 
59 
     | 
    
         
             
                      if @location
         
     | 
| 
       50 
60 
     | 
    
         
             
                        options['LocationConstraint'] = @location
         
     |