Class: Groups
- Inherits:
-
Object
- Object
- Groups
- Defined in:
- lib/floatyhelper/groups.rb
Class Method Summary collapse
- .addhosts(hosts, tag) ⇒ Object
- .appendhosts(hosts, tag) ⇒ Object
- .delete_all ⇒ Object
- .delete_tag(tag) ⇒ Object
- .host_tag(host) ⇒ Object
- .is_managed_host?(host) ⇒ Boolean
- .is_tag?(id) ⇒ Boolean
- .removehosts(hosts, tag) ⇒ Object
Class Method Details
.addhosts(hosts, tag) ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/floatyhelper/groups.rb', line 23 def self.addhosts(hosts, tag) data = Conf.load_data data['vms'] ||= {} tag = 'Blank Tag' unless tag #Removed the ability to do this hosts.each do |host| data['vms'][tag] ||= [] data['vms'][tag] << host unless data['vms'][tag].include?(host) end Conf.write_data(data) end |
.appendhosts(hosts, tag) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/floatyhelper/groups.rb', line 34 def self.appendhosts(hosts, tag) data = Conf.load_data hosts.each do |host| data['vms'][tag] ||= [] data['vms'][tag] << host unless data['vms'][tag].include?(host) end Conf.write_data(data) end |
.delete_all ⇒ Object
16 17 18 19 20 21 |
# File 'lib/floatyhelper/groups.rb', line 16 def self.delete_all data = Conf.load_data data['vms'] = {} data['snapshots'] = {} Conf.write_data(data) end |
.delete_tag(tag) ⇒ Object
9 10 11 12 13 14 |
# File 'lib/floatyhelper/groups.rb', line 9 def self.delete_tag(tag) data = Conf.load_data data['vms'].delete(tag) data['snapshots'].delete(tag) if data['snapshots'].keys.include?(tag) Conf.write_data(data) end |
.host_tag(host) ⇒ Object
58 59 60 61 62 63 |
# File 'lib/floatyhelper/groups.rb', line 58 def self.host_tag(host) data = Conf.load_data raise 'Host not found' unless is_managed_host?(host) = data['vms'].select { |tag, hosts| hosts.include?(host) }.keys [0] end |
.is_managed_host?(host) ⇒ Boolean
53 54 55 56 |
# File 'lib/floatyhelper/groups.rb', line 53 def self.is_managed_host?(host) data = Conf.load_data data['vms'].any? { |tag, hosts| hosts.include?(host) } end |
.is_tag?(id) ⇒ Boolean
4 5 6 7 |
# File 'lib/floatyhelper/groups.rb', line 4 def self.is_tag?(id) data = Conf.load_data data['vms'].keys.include?(id) end |
.removehosts(hosts, tag) ⇒ Object
43 44 45 46 47 48 49 50 51 |
# File 'lib/floatyhelper/groups.rb', line 43 def self.removehosts(hosts, tag) data = Conf.load_data hosts.each do |host| data['vms'][tag] ||= [] data['vms'][tag].delete(host) data['vms'].delete(tag) if data['vms'][tag].empty? end Conf.write_data(data) end |