Method: Beaker::OpenStack#cleanup

Defined in:
lib/beaker/hypervisor/openstack.rb

#cleanupObject

Destroy any OpenStack instances



276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
# File 'lib/beaker/hypervisor/openstack.rb', line 276

def cleanup
  @logger.notify "Cleaning up OpenStack"
  @vms.each do |vm|
    cleanup_storage(vm)
    @logger.debug "Release floating IPs for OpenStack host #{vm.name}"
    floating_ips = vm.all_addresses # fetch and release its floating IPs
    floating_ips.each do |address|
      @compute_client.disassociate_address(vm.id, address['ip'])
      @compute_client.release_address(address['id'])
    end
    @logger.debug "Destroying OpenStack host #{vm.name}"
    vm.destroy
    if @options[:openstack_keyname].nil?
      @logger.debug "Deleting random keypair"
      @compute_client.delete_key_pair vm.name
    end
  end
end