67: def disassociate_addresses
68: raise "#{@argv.ipaddress} is not allocated to you" unless Rudy::AWS::EC2::Addresses.exists?(@argv.ipaddress)
69: raise "#{@argv.ipaddress} is not associated!" unless Rudy::AWS::EC2::Addresses.associated?(@argv.ipaddress)
70:
71: address = Rudy::AWS::EC2::Addresses.get(@argv.ipaddress)
72: instance = Rudy::AWS::EC2::Instances.get(address.instid)
73:
74: li "Disassociating #{address.ipaddress} from #{instance.awsid} (#{instance.groups.join(', ')})"
75: execute_check(:medium)
76: execute_action { Rudy::AWS::EC2::Addresses.disassociate(@argv.ipaddress) }
77: address = Rudy::AWS::EC2::Addresses.get(@argv.ipaddress)
78: print_stobject address
79: end