class Facts::Rest
Public Instance Methods
find(request)
click to toggle source
# File lib/puppet/indirector/facts/rest.rb 8 def find(request) 9 session = Puppet.lookup(:http_session) 10 api = session.route_to(:puppet) 11 _, facts = api.get_facts( 12 request.key, 13 environment: request.environment.to_s 14 ) 15 facts 16 rescue Puppet::HTTP::ResponseError => e 17 if e.response.code == 404 18 return nil unless request.options[:fail_on_404] 19 20 _, body = parse_response(e.response) 21 msg = _("Find %{uri} resulted in 404 with the message: %{body}") % { uri: elide(e.response.url.path, 100), body: body } 22 raise Puppet::Error, msg 23 else 24 raise convert_to_http_error(e.response) 25 end 26 end
save(request)
click to toggle source
# File lib/puppet/indirector/facts/rest.rb 28 def save(request) 29 raise ArgumentError, _("PUT does not accept options") unless request.options.empty? 30 31 session = Puppet.lookup(:http_session) 32 api = session.route_to(:puppet) 33 api.put_facts( 34 request.key, 35 facts: request.instance, 36 environment: request.environment.to_s 37 ) 38 39 # preserve existing behavior 40 nil 41 rescue Puppet::HTTP::ResponseError => e 42 # always raise even if fail_on_404 is false 43 raise convert_to_http_error(e.response) 44 end