2011-07-13 13:27:55 -07:00
|
|
|
module Fog
|
|
|
|
module Rackspace
|
2011-08-04 16:21:22 -05:00
|
|
|
class LoadBalancers
|
2011-07-13 13:27:55 -07:00
|
|
|
class Real
|
|
|
|
def create_node(load_balancer_id, address, port, condition, options = {})
|
|
|
|
data = {
|
|
|
|
'nodes' => [
|
|
|
|
{
|
|
|
|
'address' => address,
|
|
|
|
'port' => port,
|
|
|
|
'condition' => condition
|
|
|
|
}
|
|
|
|
]}
|
|
|
|
if options.has_key?(:weight)
|
|
|
|
data['nodes'][0]['weight'] = options[:weight]
|
|
|
|
end
|
|
|
|
request(
|
2011-08-04 16:21:22 -05:00
|
|
|
:body => MultiJson.encode(data),
|
2011-07-13 13:27:55 -07:00
|
|
|
:expects => [200, 202],
|
|
|
|
:method => 'POST',
|
|
|
|
:path => "loadbalancers/#{load_balancer_id}/nodes.json"
|
|
|
|
)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|