2012-04-10 11:28:49 +08:00
|
|
|
module Fog
|
|
|
|
module Volume
|
|
|
|
class OpenStack
|
|
|
|
class Real
|
|
|
|
|
|
|
|
def list_volumes(detailed=true)
|
|
|
|
|
|
|
|
path = detailed ? 'volumes/detail' : 'volumes'
|
|
|
|
request(
|
|
|
|
:expects => 200,
|
|
|
|
:method => 'GET',
|
|
|
|
:path => path
|
|
|
|
)
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
class Mock
|
|
|
|
|
|
|
|
def list_volumes(detailed=true)
|
|
|
|
response = Excon::Response.new
|
|
|
|
response.status = 200
|
|
|
|
self.data[:volumes] ||= [
|
|
|
|
{ "status" => "available",
|
2012-09-01 02:03:28 +08:00
|
|
|
"display_description" => "test 1 desc",
|
2012-08-16 11:27:35 +08:00
|
|
|
"availability_zone" => "nova",
|
2012-09-03 14:40:34 +08:00
|
|
|
"display_name" => "Volume1",
|
2012-04-10 11:28:49 +08:00
|
|
|
"attachments" => [{}],
|
2012-08-16 11:27:35 +08:00
|
|
|
"volume_type" => nil,
|
|
|
|
"snapshot_id" => nil,
|
2012-04-10 11:28:49 +08:00
|
|
|
"size" => 1,
|
2012-09-01 02:03:28 +08:00
|
|
|
"id" => 1,
|
|
|
|
"created_at" => Time.now,
|
2012-04-10 11:28:49 +08:00
|
|
|
"metadata" => {} },
|
|
|
|
{ "status" => "available",
|
2012-09-01 02:03:28 +08:00
|
|
|
"display_description" => "test 2 desc",
|
2012-08-16 11:27:35 +08:00
|
|
|
"availability_zone" => "nova",
|
2012-09-03 14:40:34 +08:00
|
|
|
"display_name" => "Volume2",
|
2012-04-10 11:28:49 +08:00
|
|
|
"attachments" => [{}],
|
2012-08-16 11:27:35 +08:00
|
|
|
"volume_type" => nil,
|
|
|
|
"snapshot_id" => nil,
|
2012-04-10 11:28:49 +08:00
|
|
|
"size" => 1,
|
2012-09-01 02:03:28 +08:00
|
|
|
"id" => 2,
|
|
|
|
"created_at" => Time.now,
|
2012-04-10 11:28:49 +08:00
|
|
|
"metadata" => {} }
|
|
|
|
]
|
|
|
|
response.body = { 'volumes' => self.data[:volumes] }
|
|
|
|
response
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|