Documentation

Index

Constants

View Source
const (
	VerbCreate           verb = "create"
	VerbUpdate           verb = "update"
	VerbDelete           verb = "delete"
	VerbDeleteCollection verb = "deletecollection"
	VerbGet              verb = "get"
	VerbList             verb = "list"
	VerbWatch            verb = "watch"
	VerbPatch            verb = "patch"

	VerbProxy verb = "proxy" // proxy unsupported for now
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Kubernetes         kubernetes.Interface
	Aggregation        aggregatorclient.Interface
	PinnipedConcierge  pinnipedconciergeclientset.Interface
	PinnipedSupervisor pinnipedsupervisorclientset.Interface

	JSONConfig, ProtoConfig *restclient.Config
}

func New

func New(opts ...Option) (*Client, error)

type Middleware

type Middleware interface {
	Handle(ctx context.Context, rt RoundTrip)
}

type MiddlewareFunc

type MiddlewareFunc func(ctx context.Context, rt RoundTrip)

func (MiddlewareFunc) Handle

func (f MiddlewareFunc) Handle(ctx context.Context, rt RoundTrip)

type Middlewares

type Middlewares []Middleware

func (Middlewares) Handle

func (m Middlewares) Handle(ctx context.Context, rt RoundTrip)

type Object

type Object interface {
	runtime.Object // generic access to TypeMeta
	metav1.Object  // generic access to ObjectMeta
}

type Option

type Option func(*clientConfig)

func WithConfig

func WithConfig(config *restclient.Config) Option

func WithMiddleware

func WithMiddleware(middleware Middleware) Option

func WithTransportWrapper

func WithTransportWrapper(wrapper transport.WrapperFunc) Option

    WithTransportWrapper will wrap the client-go http.RoundTripper chain *after* the middleware wrapper is applied. I.e., this wrapper has the opportunity to supply an http.RoundTripper that runs first in the client-go http.RoundTripper chain.

    type RoundTrip

    type RoundTrip interface {
    	Verb() Verb
    	Namespace() string // this is the only valid way to check namespace, Object.GetNamespace() will almost always be empty
    	NamespaceScoped() bool
    	Resource() schema.GroupVersionResource
    	Subresource() string
    	MutateRequest(f func(obj Object) error)
    	MutateResponse(f func(obj Object) error)
    }

    type Verb

    type Verb interface {
    	// contains filtered or unexported methods
    }