Class: Docker::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/chef_metal_docker/docker_transport.rb

Instance Method Summary collapse

Instance Method Details

#start_request(method, *args, &block) ⇒ Object



285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
# File 'lib/chef_metal_docker/docker_transport.rb', line 285

def start_request(method, *args, &block)
  request = compile_request_params(method, *args, &block)
  if Docker.logger
    Docker.logger.debug(
      [request[:method], request[:path], request[:query], request[:body]]
    )
  end
  excon = resource
  [ excon, excon.request(request) ]
rescue Excon::Errors::BadRequest => ex
  raise ClientError, ex.message
rescue Excon::Errors::Unauthorized => ex
  raise UnauthorizedError, ex.message
rescue Excon::Errors::NotFound => ex
  raise NotFoundError, ex.message
rescue Excon::Errors::InternalServerError => ex
  raise ServerError, ex.message
rescue Excon::Errors::Timeout => ex
  raise TimeoutError, ex.message
end