Help us shape the future of Go! Take the 2026 Go Developer Survey

client

package
v1.5.2 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewInstrumentedClient added in v0.6.0

func NewInstrumentedClient(metrics *metrics.Metrics, client *http.Client) *http.Client

NewInstrumentedClient takes a *http.Client and returns a *http.Client that has its RoundTripper wrapped with instrumentation.

Types

type FakeACME

type FakeACME struct {
	FakeAuthorizeOrder          func(ctx context.Context, id []acme.AuthzID, opt ...acme.OrderOption) (*acme.Order, error)
	FakeGetOrder                func(ctx context.Context, url string) (*acme.Order, error)
	FakeFetchCert               func(ctx context.Context, url string, bundle bool) ([][]byte, error)
	FakeFetchCertAlternatives   func(ctx context.Context, url string, bundle bool) ([][][]byte, error)
	FakeWaitOrder               func(ctx context.Context, url string) (*acme.Order, error)
	FakeCreateOrderCert         func(ctx context.Context, finalizeURL string, csr []byte, bundle bool) (der [][]byte, certURL string, err error)
	FakeAccept                  func(ctx context.Context, chal *acme.Challenge) (*acme.Challenge, error)
	FakeGetChallenge            func(ctx context.Context, url string) (*acme.Challenge, error)
	FakeGetAuthorization        func(ctx context.Context, url string) (*acme.Authorization, error)
	FakeWaitAuthorization       func(ctx context.Context, url string) (*acme.Authorization, error)
	FakeRegister                func(ctx context.Context, a *acme.Account, prompt func(tosURL string) bool) (*acme.Account, error)
	FakeGetReg                  func(ctx context.Context, url string) (*acme.Account, error)
	FakeHTTP01ChallengeResponse func(token string) (string, error)
	FakeDNS01ChallengeRecord    func(token string) (string, error)
	FakeDiscover                func(ctx context.Context) (acme.Directory, error)
	FakeUpdateReg               func(ctx context.Context, a *acme.Account) (*acme.Account, error)
}

FakeACME implements Interface and can be used as a mock acme.Client in tests.

func (*FakeACME) Accept added in v0.13.0

func (f *FakeACME) Accept(ctx context.Context, chal *acme.Challenge) (*acme.Challenge, error)

func (*FakeACME) AuthorizeOrder added in v0.13.0

func (f *FakeACME) AuthorizeOrder(ctx context.Context, id []acme.AuthzID, opt ...acme.OrderOption) (*acme.Order, error)

func (*FakeACME) CreateOrderCert added in v0.13.0

func (f *FakeACME) CreateOrderCert(ctx context.Context, finalizeURL string, csr []byte, bundle bool) (der [][]byte, certURL string, err error)

func (*FakeACME) DNS01ChallengeRecord

func (f *FakeACME) DNS01ChallengeRecord(token string) (string, error)

func (*FakeACME) Discover added in v0.7.0

func (f *FakeACME) Discover(ctx context.Context) (acme.Directory, error)

func (*FakeACME) FetchCert added in v0.13.0

func (f *FakeACME) FetchCert(ctx context.Context, url string, bundle bool) ([][]byte, error)

func (*FakeACME) FetchCertAlternatives added in v1.0.0

func (f *FakeACME) FetchCertAlternatives(ctx context.Context, url string, bundle bool) ([][][]byte, error)

func (*FakeACME) GetAuthorization

func (f *FakeACME) GetAuthorization(ctx context.Context, url string) (*acme.Authorization, error)

func (*FakeACME) GetChallenge

func (f *FakeACME) GetChallenge(ctx context.Context, url string) (*acme.Challenge, error)

func (*FakeACME) GetOrder

func (f *FakeACME) GetOrder(ctx context.Context, url string) (*acme.Order, error)

func (*FakeACME) GetReg added in v0.13.0

func (f *FakeACME) GetReg(ctx context.Context, url string) (*acme.Account, error)

func (*FakeACME) HTTP01ChallengeResponse

func (f *FakeACME) HTTP01ChallengeResponse(token string) (string, error)

func (*FakeACME) Register added in v0.13.0

func (f *FakeACME) Register(ctx context.Context, a *acme.Account, prompt func(tosURL string) bool) (*acme.Account, error)

func (*FakeACME) UpdateReg added in v0.13.0

func (f *FakeACME) UpdateReg(ctx context.Context, a *acme.Account) (*acme.Account, error)

func (*FakeACME) WaitAuthorization

func (f *FakeACME) WaitAuthorization(ctx context.Context, url string) (*acme.Authorization, error)

func (*FakeACME) WaitOrder

func (f *FakeACME) WaitOrder(ctx context.Context, url string) (*acme.Order, error)

type Interface

type Interface interface {
	AuthorizeOrder(ctx context.Context, id []acme.AuthzID, opt ...acme.OrderOption) (*acme.Order, error)
	GetOrder(ctx context.Context, url string) (*acme.Order, error)
	FetchCert(ctx context.Context, url string, bundle bool) ([][]byte, error)
	FetchCertAlternatives(ctx context.Context, url string, bundle bool) ([][][]byte, error)
	WaitOrder(ctx context.Context, url string) (*acme.Order, error)
	CreateOrderCert(ctx context.Context, finalizeURL string, csr []byte, bundle bool) (der [][]byte, certURL string, err error)
	Accept(ctx context.Context, chal *acme.Challenge) (*acme.Challenge, error)
	GetChallenge(ctx context.Context, url string) (*acme.Challenge, error)
	GetAuthorization(ctx context.Context, url string) (*acme.Authorization, error)
	WaitAuthorization(ctx context.Context, url string) (*acme.Authorization, error)
	Register(ctx context.Context, acct *acme.Account, prompt func(tosURL string) bool) (*acme.Account, error)
	GetReg(ctx context.Context, url string) (*acme.Account, error)
	HTTP01ChallengeResponse(token string) (string, error)
	DNS01ChallengeRecord(token string) (string, error)
	Discover(ctx context.Context) (acme.Directory, error)
	UpdateReg(ctx context.Context, a *acme.Account) (*acme.Account, error)
}

Interface is an Automatic Certificate Management Environment (ACME) client implementing an Order-based flow.

For more information see https://pkg.go.dev/golang.org/x/crypto/acme#Client and RFC 8555 (https://tools.ietf.org/html/rfc8555).

type Transport added in v0.6.0

type Transport struct {
	// contains filtered or unexported fields
}

Transport is a http.RoundTripper that collects Prometheus metrics of every request it processes. It allows to be configured with callbacks that process request path and query into a suitable label value.

func (*Transport) RoundTrip added in v0.6.0

func (it *Transport) RoundTrip(req *http.Request) (*http.Response, error)

RoundTrip implements http.RoundTripper. It forwards the request to the wrapped RoundTripper and measures the time it took in Prometheus summary.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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