class Fog::Proxmox::Identity::Pool
class Pool model of VMs
Public Instance Methods
add_server(server)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 40 def add_server(server) update_with_member('vms', server, false) end
add_storage(storage)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 44 def add_storage(storage) update_with_member('storage', storage, false) end
destroy()
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 34 def destroy requires :poolid service.delete_pool(poolid) true end
has_server?(vmid)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 69 def has_server?(vmid) has?("vmid", vmid) end
has_storage?(storage)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 73 def has_storage?(storage) has?("storage", storage) end
remove_server(server)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 52 def remove_server(server) update_with_member('vms', server, true) end
remove_storage(storage)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 48 def remove_storage(storage) update_with_member('storage', storage, true) end
save(options = {})
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 29 def save(options = {}) service.create_pool(attributes.merge(options)) reload end
update()
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 65 def update update_with_member(nil, nil, false) end
update_with_member(member_name, member_id, delete = false)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 56 def update_with_member(member_name, member_id, delete = false) requires :poolid otpions = attributes.reject { |attribute| %i[poolid members].include? attribute } otpions.store(member_name, member_id) if member_name otpions.store('delete', 1) if delete service.update_pool(poolid, otpions) reload end
Private Instance Methods
has?(key, vmid)
click to toggle source
# File lib/fog/identity/proxmox/models/pool.rb, line 79 def has?(key, vmid) result = false attributes[:members].each do |member| result = member[key].to_s.eql?(vmid.to_s) if member.has_key?(key) && member[key] && vmid end result end