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