class Node::Rest
Public Instance Methods
find(request)
click to toggle source
# File lib/puppet/indirector/node/rest.rb 8 def find(request) 9 session = Puppet.lookup(:http_session) 10 api = session.route_to(:puppet) 11 _, node = api.get_node( 12 request.key, 13 environment: request.environment.to_s, 14 configured_environment: request.options[:configured_environment], 15 transaction_uuid: request.options[:transaction_uuid] 16 ) 17 node 18 rescue Puppet::HTTP::ResponseError => e 19 if e.response.code == 404 20 return nil unless request.options[:fail_on_404] 21 22 _, body = parse_response(e.response) 23 msg = _("Find %{uri} resulted in 404 with the message: %{body}") % { uri: elide(e.response.url.path, 100), body: body } 24 raise Puppet::Error, msg 25 else 26 raise convert_to_http_error(e.response) 27 end 28 end