lib/fog/openstack/volume_v2.rb in fog-openstack-0.1.5 vs lib/fog/openstack/volume_v2.rb in fog-openstack-0.1.6
- old
+ new
@@ -1,6 +1,6 @@
-
+require 'fog/openstack/core'
require 'fog/openstack/common'
require 'fog/openstack/volume'
module Fog
module Volume
@@ -21,19 +21,23 @@
collection :availability_zones
model :volume_type
collection :volume_types
+ model :snapshot
+ collection :snapshots
+
model :transfer
collection :transfers
request_path 'fog/openstack/requests/volume_v2'
# Volume
request :list_volumes
request :list_volumes_detailed
request :create_volume
+ request :update_volume
request :get_volume_details
request :extend_volume
request :delete_volume
request :list_zones
@@ -42,15 +46,18 @@
request :create_volume_type
request :update_volume_type
request :delete_volume_type
request :get_volume_type_details
- request :create_volume_snapshot
+ request :create_snapshot
+ request :update_snapshot
request :list_snapshots
request :list_snapshots_detailed
request :get_snapshot_details
request :delete_snapshot
+ request :update_snapshot_metadata
+ request :delete_snapshot_metadata
request :list_transfers
request :list_transfers_detailed
request :create_transfer
request :get_transfer_details
@@ -58,35 +65,39 @@
request :delete_transfer
request :update_quota
request :get_quota
request :get_quota_defaults
-
request :get_quota_usage
+ request :update_metadata
+ request :replace_metadata
+ request :delete_metadata
+
request :set_tenant
+ request :action
class Mock
def self.data
@data ||= Hash.new do |hash, key|
hash[key] = {
- :users => {},
- :tenants => {},
- :quota => {
- 'gigabytes' => 1000,
- 'volumes' => 10,
- 'snapshots' => 10
- }
+ :users => {},
+ :tenants => {},
+ :quota => {
+ 'gigabytes' => 1000,
+ 'volumes' => 10,
+ 'snapshots' => 10
+ }
}
end
end
def self.reset
@data = nil
end
- def initialize(options={})
+ def initialize(options = {})
@openstack_username = options[:openstack_username]
@openstack_tenant = options[:openstack_tenant]
@openstack_auth_uri = URI.parse(options[:openstack_auth_url])
@auth_token = Fog::Mock.random_base64(64)
@@ -99,15 +110,15 @@
@data ||= {:users => {}}
unless @data[:users].find { |u| u['name'] == options[:openstack_username] }
id = Fog::Mock.random_numbers(6).to_s
@data[:users][id] = {
- 'id' => id,
- 'name' => options[:openstack_username],
- 'email' => "#{options[:openstack_username]}@mock.com",
- 'tenantId' => Fog::Mock.random_numbers(6).to_s,
- 'enabled' => true
+ 'id' => id,
+ 'name' => options[:openstack_username],
+ 'email' => "#{options[:openstack_username]}@mock.com",
+ 'tenantId' => Fog::Mock.random_numbers(6).to_s,
+ 'enabled' => true
}
end
end
def data
@@ -131,11 +142,11 @@
def self.not_found_class
Fog::Volume::OpenStack::NotFound
end
include Fog::OpenStack::Common
- def initialize(options={})
+ def initialize(options = {})
initialize_identity options
@openstack_service_type = options[:openstack_service_type] || ['volumev2']
@openstack_service_name = options[:openstack_service_name]
@openstack_endpoint_type = options[:openstack_endpoint_type] || 'adminURL'
@@ -152,13 +163,10 @@
end
@persistent = options[:persistent] || false
@connection = Fog::Core::Connection.new("#{@scheme}://#{@host}:#{@port}", @persistent, @connection_options)
end
-
- private
-
end
end
end
end
-end
\ No newline at end of file
+end