mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
42 lines
1 KiB
Ruby
42 lines
1 KiB
Ruby
module Fog
|
|
module Compute
|
|
class OpenStack
|
|
class Real
|
|
|
|
def allocate_address(pool = nil)
|
|
|
|
request(
|
|
:body => MultiJson.encode({'pool' => pool}),
|
|
:expects => [200, 202],
|
|
:method => 'POST',
|
|
:path => 'os-floating-ips.json'
|
|
)
|
|
end
|
|
|
|
end
|
|
|
|
class Mock
|
|
def allocate_address(pool = nil)
|
|
response = Excon::Response.new
|
|
response.status = 200
|
|
response.headers = {
|
|
"X-Compute-Request-Id" => "req-d4a21158-a86c-44a6-983a-e25645907f26",
|
|
"Content-Type" => "application/json",
|
|
"Content-Length" => "105",
|
|
"Date"=> Date.new
|
|
}
|
|
response.body = {
|
|
"floating_ip" => {
|
|
"instance_id" => nil,
|
|
"ip" => "192.168.27.132",
|
|
"fixed_ip" => nil,
|
|
"id" => 4,
|
|
"pool"=>"nova"
|
|
}
|
|
}
|
|
response
|
|
end
|
|
end # mock
|
|
end # openstack
|
|
end #compute
|
|
end
|