Module: AceClient::Niftycloud::Nas
- Defined in:
- lib/ace-client/niftycloud/nas.rb
Class Method Summary collapse
Instance Method Summary collapse
- #delete_nas_instances ⇒ Object
- #delete_nas_security_groups ⇒ Object
- #delete_resources ⇒ Object
- #items(key) ⇒ Object
Class Method Details
.build_client(options = {}) ⇒ Object
4 5 6 7 8 |
# File 'lib/ace-client/niftycloud/nas.rb', line 4 def build_client(={}) client = AceClient::Query2.new() client.extend(AceClient::Niftycloud::Nas) client end |
Instance Method Details
#delete_nas_instances ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# 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 ⇒ Object
37 38 39 40 41 |
# 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 ⇒ Object
43 44 45 46 |
# File 'lib/ace-client/niftycloud/nas.rb', line 43 def delete_resources delete_nas_instances delete_nas_security_groups end |
#items(key) ⇒ Object
10 11 12 13 |
# 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 |