lib/beaker/hypervisor/blimper.rb in beaker-1.0.1 vs lib/beaker/hypervisor/blimper.rb in beaker-1.1.0
- old
+ new
@@ -57,20 +57,20 @@
end
@logger.debug "Added #{host.name} (#{amitype}:#{amisize}) using snapshot/image_type #{image_type} to blimpy fleet"
end
end
- # Attempt to start the fleet, we wrap it with some error handling that deals
- # with generic Fog errors and retrying in case these errors are transient.
+ # Attempt to start the fleet, we wrap it with some error handling that
+ # deals with generic Fog errors and retrying in case these errors are
+ # transient.
fleet_retries = 0
begin
fleet.start
- rescue Fog::Errors::Error => ex
+ rescue Fog::Errors::Error, SystemCallError => ex
fleet_retries += 1
if fleet_retries <= 3
sleep_time = rand(10) + 10
- @logger.notify("Calling fleet.destroy, sleeping #{sleep_time} seconds and retrying fleet.start due to Fog::Errors::Error (#{
- ex.message}), retry attempt #{fleet_retries}.")
+ @logger.notify("Calling fleet.destroy, sleeping #{sleep_time} seconds and retrying fleet.start due to exception #{ex.class.to_s} (#{ex.message}), retry attempt #{fleet_retries}.")
begin
timeout(30) do
fleet.destroy
end
rescue