class Fog::Compute::Brightbox::Servers
Public Instance Methods
all()
click to toggle source
# File lib/fog/brightbox/models/compute/servers.rb, line 12 def all data = service.list_servers load(data) end
bootstrap(options = {})
click to toggle source
Creates a server and maps an Cloud IP
By default the public SSH key you have registered with Brightbox is already made available in an AWS compatible metdata service.
@todo Support uploading of arbitary SSH keys
@param [Hash] options @option options [String] name Name for the server @option options [String] flavor_id Identifier for virtual hardware type to request @option options [String] image_id Identifier for image to use when creating @option options [String] zone_id Identifer for preferred zone to locate server in @option options [Array<String>] server_groups List of group identifiers for the server to join
@return Fog::Compute::Brightbox::Server
# File lib/fog/brightbox/models/compute/servers.rb, line 34 def bootstrap(options = {}) server = create(options) # Ensure server is now available server.wait_for { ready? } # To get a public IP address we need to map a cloud IP address cip = service.cloud_ips.allocate cip.map(server) cip.wait_for { mapped? } # Reload so the public IP is now available server.reload end
get(identifier)
click to toggle source
# File lib/fog/brightbox/models/compute/servers.rb, line 49 def get(identifier) return nil if identifier.nil? || identifier == "" data = service.get_server(identifier) new(data) rescue Excon::Errors::NotFound nil end