cert-manager: github.com/jetstack/cert-manager/pkg/acme/accounts Index | Files | Directories

package accounts

import "github.com/jetstack/cert-manager/pkg/acme/accounts"


Package Files

client.go registry.go


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 Uses

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

BuildHTTPClient returns a instramented 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 Uses

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

NewClient will return a new ACME client.

type Getter Uses

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 Registry Uses

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 Uses

func NewDefaultRegistry() Registry

NewDefaultRegistry returns a new default instantiation of a client registry.



Package accounts imports 12 packages (graph) and is imported by 4 packages. Updated 2020-08-05. Refresh now. Tools for package owners.