Class: Fog::Compute::HPV2::Servers
- Inherits:
-
Fog::Collection
- Object
- Array
- Fog::Collection
- Fog::Compute::HPV2::Servers
- Defined in:
- lib/fog/hp/models/compute_v2/servers.rb
Instance Attribute Summary
Attributes inherited from Fog::Collection
Instance Method Summary collapse
- #all(filters = filters) ⇒ Object
-
#bootstrap(new_attributes = {}) ⇒ Object
Creates a new server and populates ssh keys service.servers.bootstrap :name => ‘my-server’, :flavor_id => service.flavors.first.id, :image_id => service.images.find {|img| img.name =~ /Ubuntu/}.id, :public_key_path => ‘~/.ssh/my_public_key.pub’, :private_key_path => ‘~/.ssh/my_private_key’.
- #get(server_id) ⇒ Object
-
#initialize(attributes) ⇒ Servers
constructor
A new instance of Servers.
Methods inherited from Fog::Collection
#clear, #create, #destroy, #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
#initialize(attributes) ⇒ Servers
Returns a new instance of Servers.
14 15 16 17 |
# File 'lib/fog/hp/models/compute_v2/servers.rb', line 14 def initialize(attributes) self.filters ||= {} super end |
Instance Method Details
#all(filters = filters) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/fog/hp/models/compute_v2/servers.rb', line 19 def all(filters = filters) details = filters.delete(:details) self.filters = filters non_aliased_filters = Fog::HP.convert_aliased_attributes_to_original(self.model, filters) if details data = service.list_servers_detail(non_aliased_filters).body['servers'] else data = service.list_servers(non_aliased_filters).body['servers'] end load(data) end |
#bootstrap(new_attributes = {}) ⇒ Object
Creates a new server and populates ssh keys service.servers.bootstrap :name => ‘my-server’,
:flavor_id => service.flavors.first.id,
:image_id => service.images.find {|img| img.name =~ /Ubuntu/}.id,
:public_key_path => '~/.ssh/my_public_key.pub',
:private_key_path => '~/.ssh/my_private_key'
37 38 39 40 41 42 |
# File 'lib/fog/hp/models/compute_v2/servers.rb', line 37 def bootstrap(new_attributes = {}) server = create(new_attributes) server.wait_for { ready? && !public_ip_address.empty?} server.setup(:password => server.password) server end |