Class: PleskKit::Server
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- PleskKit::Server
- Defined in:
- app/models/plesk_kit/server.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.most_suitable_for_new_customer(platform) ⇒ Object
11 12 13 14 15 16 17 |
# File 'app/models/plesk_kit/server.rb', line 11 def self.most_suitable_for_new_customer(platform) server_list = PleskKit::Server.where(:environment => Rails.env.to_s, :platform => platform) servers = [] server_list.each { |s| servers << PleskKit::Communicator.get_server_stats(server=s) } servers = servers.sort_by { |hsh| hsh[:ram] }.reverse PleskKit::Server.find servers.first[:id] end |
Instance Method Details
#analyse_this(response) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'app/models/plesk_kit/server.rb', line 37 def analyse_this response xml = REXML::Document.new(response) free_ram = cpu = nil ram = xml.root.elements['//mem'] ram.each do |r| if r.name == 'free' free_ram = r.text end end cpu = xml.root.elements['//l15'].text return {id:self.id,ram:free_ram,cpu:cpu} end |
#pack_this(shell) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'app/models/plesk_kit/server.rb', line 24 def pack_this shell xml = shell xml.instruct! xml.packet(:version => '1.6.3.5') { xml.server{ xml.get{ xml.stat() } } } return xml.target! end |
#starved_of_resources? ⇒ Boolean
19 20 21 22 |
# File 'app/models/plesk_kit/server.rb', line 19 def starved_of_resources? # TODO Check CPU, Diskspace, RAM. Return false if all met satisfactorily. false end |