class ProfitBricks::Loadbalancer
Loadbalancer
class
Public Class Methods
create(datacenter_id, options = {})
click to toggle source
Create a new loadbalancer.
Parameters¶ ↑
-
options
<Hash>:-
name
<String> - Optional, name of the loadbalancer -
ip
<String> - Optional, IPv4 address of the loadbalancer -
dhcp
<Boolean> - Optional, Indicates if the loadbalancer will reserve an IP using DHCP
-
Returns¶ ↑
-
id
<String> - Universally unique identifer of resource -
type
<String> -Resource
type -
href
<String> -Resource
URL representation -
metadata
<Hash>:-
lastModifiedDate
-
lastModifiedBy
-
createdDate
-
createdBy
-
state
-
etag
-
-
properties
<Hash>:-
name
<String> -
ip
<String> -
dhcp
<Boolean>
-
# File lib/profitbricks/loadbalancer.rb, line 96 def create(datacenter_id, options = {}) response = ProfitBricks.request( method: :post, path: "/datacenters/#{datacenter_id}/loadbalancers", expects: 202, body: { properties: options }.to_json ) add_parent_identities(response) instantiate_objects(response) end
get(datacenter_id, loadbalancer_id)
click to toggle source
Retrieve a loadbalancer under a datacenter.
# File lib/profitbricks/loadbalancer.rb, line 119 def get(datacenter_id, loadbalancer_id) response = ProfitBricks.request( method: :get, path: "/datacenters/#{datacenter_id}/loadbalancers/#{loadbalancer_id}", expects: 200 ) add_parent_identities(response) instantiate_objects(response) end
list(datacenter_id)
click to toggle source
List all loadbalancers under a datacenter.
# File lib/profitbricks/loadbalancer.rb, line 108 def list(datacenter_id) response = ProfitBricks.request( method: :get, path: "/datacenters/#{datacenter_id}/loadbalancers", expects: 200 ) add_parent_identities(response) instantiate_objects(response) end
Public Instance Methods
associate_balanced_nic(nic_id)
click to toggle source
# File lib/profitbricks/loadbalancer.rb, line 39 def associate_balanced_nic(nic_id) response = ProfitBricks.request( method: :post, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}/balancednics", expects: 202, body: { id: nic_id }.to_json ) self.class.instantiate_objects(response) end
Also aliased as: associate_nic
delete()
click to toggle source
Delete the loadbalancer.
# File lib/profitbricks/loadbalancer.rb, line 5 def delete response = ProfitBricks.request( method: :delete, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}", expects: 202 ) self.requestId = response[:requestId] self end
get_balanced_nic(nic_id)
click to toggle source
# File lib/profitbricks/loadbalancer.rb, line 49 def get_balanced_nic(nic_id) response = ProfitBricks.request( method: :get, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}/balancednics/#{nic_id}", expects: 200 ) self.class.instantiate_objects(response) end
list_balanced_nics()
click to toggle source
# File lib/profitbricks/loadbalancer.rb, line 30 def list_balanced_nics response = ProfitBricks.request( method: :get, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}/balancednics", expects: 200 ) self.class.instantiate_objects(response) end
Also aliased as: list_nics
remove_balanced_nic(nic_id)
click to toggle source
# File lib/profitbricks/loadbalancer.rb, line 58 def remove_balanced_nic(nic_id) ProfitBricks.request( method: :delete, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}/balancednics/#{nic_id}", expects: 202 ) end
Also aliased as: remove_nic
update(options = {})
click to toggle source
Update the loadbalancer.
# File lib/profitbricks/loadbalancer.rb, line 16 def update(options = {}) response = ProfitBricks.request( method: :patch, path: "/datacenters/#{datacenterId}/loadbalancers/#{id}", expects: 202, body: options.to_json ) if response self.requestId = response['requestId'] @properties = @properties.merge(response['properties']) end self end