class Puppet::HTTP::Service::Puppetserver

The puppetserver service.

@api public

Public Class Methods

new(client, session, server, port) click to toggle source

Use `Puppet::HTTP::Session.route_to(:puppetserver)` to create or get an instance of this class.

@param [Puppet::HTTP::Client] client @param [Puppet::HTTP::Session] session @param [String] server (`Puppet`) If an explicit server is given,

create a service using that server. If server is nil, the default value
is used to create the service.

@param [Integer] port (`Puppet`) If an explicit port is given, create

a service using that port. If port is nil, the default value is used to
create the service.
Calls superclass method Puppet::HTTP::Service::new
   # File lib/puppet/http/service/puppetserver.rb
19 def initialize(client, session, server, port)
20   url = build_url('', server || Puppet[:server], port || Puppet[:serverport])
21   super(client, session, url)
22 end

Public Instance Methods

get_simple_status(ssl_context: nil) click to toggle source

Request the puppetserver's simple status.

@param [Puppet::SSL::SSLContext] ssl_context to use when establishing the connection. @return Puppet::HTTP::Response The HTTP response

@api public

   # File lib/puppet/http/service/puppetserver.rb
32 def get_simple_status(ssl_context: nil)
33   request_path = "/status/v1/simple/server"
34 
35   begin
36     response = @client.get(
37       with_base_url(request_path),
38       headers: add_puppet_headers({}),
39       options: {ssl_context: ssl_context}
40     )
41 
42     process_response(response)
43   rescue Puppet::HTTP::ResponseError => e
44     if e.response.code == 404 && e.response.url.path == "/status/v1/simple/server"
45       request_path = "/status/v1/simple/master"
46       retry
47     else
48       raise e
49     end
50   end
51 
52   [response, response.body.to_s]
53 end