Version: v1.6.1 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2021 License: Apache-2.0 Imports: 14 Imported by: 0




This section is empty.


View Source
var ErrNotFound = errors.New("ACME client for issuer not initialised/available")

ErrNotFound is returned by GetClient if there is no ACME client registered.


func BuildHTTPClient

func BuildHTTPClient(metrics *metrics.Metrics, skipTLSVerify bool) *http.Client

BuildHTTPClient returns a instrumented HTTP client to be used by the ACME client. For the time being, we construct a new HTTP client on each invocation. This is because we need to set the 'skipTLSVerify' flag on the HTTP client itself. In future, we may change to having two global HTTP clients - one that ignores TLS connection errors, and the other that does not.

func NewClient

func NewClient(client *http.Client, config cmacme.ACMEIssuer, privateKey *rsa.PrivateKey) acmecl.Interface

NewClient is an implementation of NewClientFunc that returns a real ACME client.


type Getter

type Getter interface {
	// GetClient will fetch a registered client using the UID of the Issuer
	// resources that constructed it.
	// If no client is found, ErrNotFound will be returned.
	GetClient(uid string) (acmecl.Interface, error)

	// ListClients will return a full list of all ACME clients by their UIDs.
	// This can be used to enumerate all registered clients and call RemoveClient
	// on any clients that should no longer be registered, e.g. because their
	// corresponding Issuer resource has been deleted.
	ListClients() map[string]acmecl.Interface

Getter is an interface that contains the read-only methods for a registry.

type NewClientFunc added in v1.4.0

type NewClientFunc func(*http.Client, cmacme.ACMEIssuer, *rsa.PrivateKey) acmecl.Interface

NewClientFunc is a function type for building a new ACME client.

type Registry

type Registry interface {
	// AddClient will ensure the registry has a stored ACME client for the Issuer
	// object with the given UID, configuration and private key.
	AddClient(client *http.Client, uid string, config cmacme.ACMEIssuer, privateKey *rsa.PrivateKey)

	// RemoveClient will remove a registered client using the UID of the Issuer
	// resource that constructed it.
	RemoveClient(uid string)


A registry provides a means to store and access ACME clients using an issuer objects UID. This is used as a shared cache of ACME clients across various controllers.

func NewDefaultRegistry

func NewDefaultRegistry() Registry

NewDefaultRegistry returns a new default instantiation of a client registry.


Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL