Class: Fog::Compute::RackspaceV2::Servers
- Inherits:
-
Fog::Collection
- Object
- Array
- Fog::Collection
- Fog::Compute::RackspaceV2::Servers
- Defined in:
- lib/fog/rackspace/models/compute_v2/servers.rb
Instance Attribute Summary
Attributes inherited from Fog::Collection
Instance Method Summary collapse
-
#all ⇒ Array<Fog::Compute::RackspaceV2::Server>
Returns list of servers.
-
#bootstrap(new_attributes = {}) ⇒ Object
Creates a new server and populates ssh keys.
-
#get(server_id) ⇒ Fog::Compute::RackspaceV2:Server
Retrieves server.
Methods inherited from Fog::Collection
#clear, #create, #destroy, #initialize, #inspect, #load, model, #model, #new, #reload, #table, #to_json
Methods included from Attributes::ClassMethods
#_load, #aliases, #attribute, #attributes, #identity, #ignore_attributes, #ignored_attributes
Methods included from Fog::Core::DeprecatedConnectionAccessors
#connection, #connection=, #prepare_service_value
Methods included from Attributes::InstanceMethods
#_dump, #attributes, #dup, #identity, #identity=, #merge_attributes, #new_record?, #persisted?, #requires, #requires_one
Constructor Details
This class inherits a constructor from Fog::Collection
Instance Method Details
#all ⇒ Array<Fog::Compute::RackspaceV2::Server>
Fog’s current implementation only returns 1000 servers
Returns list of servers
16 17 18 19 |
# File 'lib/fog/rackspace/models/compute_v2/servers.rb', line 16 def all data = service.list_servers.body['servers'] load(data) end |
#bootstrap(new_attributes = {}) ⇒ Object
This method is incompatible with Cloud Servers utlizing RackConnect. RackConnect users should use server personalization to install keys. Please see Server#personality for more information.
Creates a new server and populates ssh keys
31 32 33 34 35 36 |
# File 'lib/fog/rackspace/models/compute_v2/servers.rb', line 31 def bootstrap(new_attributes = {}) server = create(new_attributes) server.wait_for(1500) { ready? && !public_ip_address.empty? } server.setup(:password => server.password) server end |
#get(server_id) ⇒ Fog::Compute::RackspaceV2:Server
Retrieves server
42 43 44 45 46 47 |
# File 'lib/fog/rackspace/models/compute_v2/servers.rb', line 42 def get(server_id) data = service.get_server(server_id).body['server'] new(data) rescue Fog::Compute::RackspaceV2::NotFound nil end |