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
18 def initialize(client, session, server, port)
19   url = build_url('', server || Puppet[:server], port || Puppet[:serverport])
20   super(client, session, url)
21 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
31 def get_simple_status(ssl_context: nil)
32   request_path = "/status/v1/simple/server"
33 
34   begin
35     response = @client.get(
36       with_base_url(request_path),
37       headers: add_puppet_headers({}),
38       options: {ssl_context: ssl_context}
39     )
40 
41     process_response(response)
42   rescue Puppet::HTTP::ResponseError => e
43     if e.response.code == 404 && e.response.url.path == "/status/v1/simple/server"
44       request_path = "/status/v1/simple/master"
45       retry
46     else
47       raise e
48     end
49   end
50 
51   [response, response.body.to_s]
52 end