module AceClient::Niftycloud::Nas

Public Class Methods

build_client(options={}) click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 4
def build_client(options={})
  client = AceClient::Query2.new(options)
  client.extend(AceClient::Niftycloud::Nas)
  client
end

Public Instance Methods

delete_nas_instances() click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 22
def delete_nas_instances
  nas_instances.each do |nas_instance|
    self.action('DeleteNASInstance', 'NASInstanceIdentifier' => nas_instance['NASInstanceIdentifier'])
  end
  timeout(60*60) do
    until nas_instances.empty?
      if nas_instances.any? {|nas_instance| nas_instance['NASInstanceStatus'] == 'failed' }
        failed = nas_instances.select {|nas_instance| nas_instance['NASInstanceStatus'] == 'failed' }
        raise "NASInstance #{failed.map {|f| f['NASInstanceIdentifier'] }.join(',')} is failed"
      end
      sleep 5
    end
  end
end
delete_nas_security_groups() click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 37
def delete_nas_security_groups
  nas_security_groups.each do |nas_security_group|
    self.action('DeleteNASSecurityGroup', 'NASSecurityGroupName' => nas_security_group['NASSecurityGroupName'])
  end
end
delete_resources() click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 43
def delete_resources
  delete_nas_instances
  delete_nas_security_groups
end
items(key) click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 10
def items(key)
   response = self.action("Describe#{key}s", {})
   [response["Describe#{key}sResponse"]["Describe#{key}sResult"]["#{key}s"][key]].flatten rescue []
end

Private Instance Methods

build_client(options={}) click to toggle source
# File lib/ace-client/niftycloud/nas.rb, line 4
def build_client(options={})
  client = AceClient::Query2.new(options)
  client.extend(AceClient::Niftycloud::Nas)
  client
end