add_balancer_node(options = {})
click to toggle source
def add_balancer_node(options = {})
request(
:path => "/network/loadbalancer/addnode",
:body => Fog::JSON.encode({:params => options})
)
end
clone_server(options = {})
click to toggle source
def clone_server(options = {})
request(
:path => "/storm/server/clone",
:body => Fog::JSON.encode({:params => options})
)
end
create_server(options = {})
click to toggle source
def create_server(options = {})
request(
:path => "/storm/server/create",
:body => Fog::JSON.encode({:params => options})
)
end
delete_server(options = {})
click to toggle source
def delete_server(options = {})
request(
:path => "/storm/server/destroy",
:body => Fog::JSON.encode({:params => options})
)
end
get_server(options = {})
click to toggle source
def get_server(options = {})
request(
:path => "/storm/server/details",
:body => Fog::JSON.encode({:params => options})
)
end
get_stats(options = {})
click to toggle source
def get_stats(options = {})
request(
:path => "/monitoring/load/stats",
:body => Fog::JSON.encode({:params => options})
)
end
list_balancers(options = {})
click to toggle source
def list_balancers(options = {})
request(
:path => "/network/loadbalancer/list",
:body => Fog::JSON.encode(options)
)
end
list_configs(options = {})
click to toggle source
def list_configs(options = {})
request(
:path => "/storm/config/list",
:body => Fog::JSON.encode(options)
)
end
list_images(options = {})
click to toggle source
def list_images(options = {})
request(
:path => "/server/image/list",
:body => Fog::JSON.encode(options)
)
end
list_private_ips(options = {})
click to toggle source
def list_private_ips(options = {})
request(
:path => "/network/private/get",
:body => Fog::JSON.encode(options)
)
end
list_servers(options = {})
click to toggle source
def list_servers(options = {})
request(
:path => "/storm/server/list",
:body => Fog::JSON.encode(options)
)
end
list_templates(options = {})
click to toggle source
def list_templates(options = {})
request(
:path => "/server/template/list",
:body => Fog::JSON.encode(options)
)
end
reboot_server(options = {})
click to toggle source
def reboot_server(options = {})
request(
:path => "/storm/server/reboot",
:body => Fog::JSON.encode({:params => options})
)
end
reload()
click to toggle source
def reload
@connection.reset
end
remove_balancer_node(options = {})
click to toggle source
def remove_balancer_node(options = {})
request(
:path => "/network/loadbalancer/removenode",
:body => Fog::JSON.encode({:params => options})
)
end
request(params)
click to toggle source
def request(params)
begin
response = @connection.request(params.merge!({
:headers => {
'Content-Type' => 'application/json',
'Authorization' => 'Basic ' << Base64.encode64("#{@storm_on_demand_username}:#{@storm_on_demand_password}").chomp
}.merge!(params[:headers] || {}),
:host => @host,
:path => "#{@path}/#{params[:path]}",
:expects => 200,
:method => :post
}))
rescue Excon::Errors::HTTPStatusError => error
raise case error
when Excon::Errors::NotFound
Fog::StormOnDemand::Compute::NotFound.slurp(error)
else
error
end
end
unless response.body.empty?
response.body = Fog::JSON.decode(response.body)
end
if response.body.has_key?('full_error')
raise(Fog::Compute::StormOnDemand::Error, response.body.inspect)
end
response
end
resize_server(options = {})
click to toggle source
def resize_server(options = {})
request(
:path => "/storm/server/resize",
:body => Fog::JSON.encode({:params => options})
)
end