def build_excon_response(body, status=200)
response = Excon::Response.new
response.body = body
if response.body and response.body["error"]
response.status = response.body["error"]["code"]
if response.body["error"]["errors"]
msg = response.body["error"]["errors"].map{|error| error["message"]}.join(", ")
else
msg = "Error [#{response.body["error"]["code"]}]: #{response.body["error"]["message"] || "GCE didn't return an error message"}"
end
case response.status
when 404
raise Fog::Errors::NotFound.new(msg)
else
raise Fog::Errors::Error.new(msg)
end
else
response.status = status
end
response
end