Class: Yao::Resources::Server

Inherits:
Base
  • Object
show all
Extended by:
Action, MetadataAvailable
Includes:
TenantAssociationable
Defined in:
lib/yao/resources/server.rb

Instance Attribute Summary

Attributes included from RestfullyAccessible

#service

Class Method Summary collapse

Instance Method Summary collapse

Methods included from MetadataAvailable

create_metadata, delete_metadata, get_metadata, list_metadata, set_metadata, update_metadata

Methods included from Action

action

Methods included from TenantAssociationable

included, #tenant

Methods inherited from Base

#[], #[]=, #created, friendly_attributes, #id, #initialize, map_attribute_to_attribute, map_attribute_to_resource, map_attribute_to_resources, #updated

Methods included from RestfullyAccessible

#admin=, #api_version, #api_version=, #as_member, #client, #create, #destroy, extended, #find_by_name, #get, #get!, #list, #resources_path, #resources_path=, #return_single_on_querying, #return_single_on_querying=, #update

Constructor Details

This class inherits a constructor from Yao::Resources::Base

Class Method Details

.add_security_group(id, sg_name) ⇒ Object



48
49
50
# File 'lib/yao/resources/server.rb', line 48

def self.add_security_group(id, sg_name)
  action(id, {"addSecurityGroup": {"name": sg_name}})
end

.reboot(id) ⇒ Object



40
41
42
# File 'lib/yao/resources/server.rb', line 40

def self.reboot(id)
  action(id,"reboot" => { "type" => "HARD" })
end

.remove_security_group(id, sg_name) ⇒ Object



52
53
54
# File 'lib/yao/resources/server.rb', line 52

def self.remove_security_group(id, sg_name)
  action(id, {"removeSecurityGroup": {"name": sg_name}})
end

.resize(id, flavor_id) ⇒ Object



44
45
46
# File 'lib/yao/resources/server.rb', line 44

def self.resize(id, flavor_id)
  action(id,"resize" => { "flavorRef" => flavor_id })
end

.shutoff(id) ⇒ Object Also known as: stop



36
37
38
# File 'lib/yao/resources/server.rb', line 36

def self.shutoff(id)
  action(id, "os-stop" => nil)
end

.start(id) ⇒ Object



32
33
34
# File 'lib/yao/resources/server.rb', line 32

def self.start(id)
  action(id, "os-start" => nil)
end

Instance Method Details

#old_samples(counter_name: nil, query: {}) ⇒ Object



28
29
30
# File 'lib/yao/resources/server.rb', line 28

def old_samples(counter_name: nil, query: {})
  Yao::OldSample.list(counter_name, query).select{|os| os.["instance_id"] == id}
end