1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/openstack/requests/compute/list_tenants.rb
Nelvin Driz 7cf6031c81 [openstack|compute] Add Tenants and Fix Authentication Implementation
Fixed typorgraphical errors. Authentication assumes or does not require
certain parameters that is actually needed depending on the setup or
scenario. Opted to simply make it detect it if not specified to make it
easier for first time users to use.

Conflicts:

	lib/fog/openstack.rb
2012-04-30 10:34:58 +08:00

43 lines
1.2 KiB
Ruby

module Fog
module Compute
class OpenStack
class Real
def list_tenants
response = @identity_connection.request({
:expects => [200, 204],
:headers => {'Content-Type' => 'application/json',
'X-Auth-Token' => @auth_token},
:method => 'GET',
:path => '/v2.0/tenants'
})
response.body = MultiJson.decode(response.body)
response
end
end
class Mock
def list_tenants
response = Excon::Response.new
response.status = [200, 204][rand(1)]
response.body = {
'tenants' => [
{'id' => '1',
'description' => 'Has access to everything',
'enabled' => true,
'name' => 'admin'},
{'id' => '2',
'description' => 'Normal tenant',
'enabled' => true,
'name' => 'default'},
{'id' => '3',
'description' => 'Disabled tenant',
'enabled' => false,
'name' => 'disabled'}
]
}
response
end
end # class Mock
end #class OpenStack
end # module Compute
end # module Fog