client

package
v1.3.4 Latest Latest
Warning

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

Go to latest
Published: Mar 5, 2021 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// CSRs CertificateSigningRequest
	CSRs string = "CertificateSigningRequest"
	// Secrets Secret
	Secrets string = "Secret"
	// ConfigMaps ConfigMap
	ConfigMaps string = "ConfigMap"
	// Namespaces Namespace
	Namespaces string = "Namespace"
)

Variables

This section is empty.

Functions

func NewFakeDiscoveryClient added in v0.4.0

func NewFakeDiscoveryClient(registeredResources []schema.GroupVersionResource) *fakeDiscoveryClient

NewFakeDiscoveryClient returns a fakediscovery client

Types

type Client

type Client struct {
	DiscoveryClient IDiscovery
	// contains filtered or unexported fields
}

Client enables interaction with k8 resource

func NewClient

func NewClient(config *rest.Config, resync time.Duration, stopCh <-chan struct{}, log logr.Logger) (*Client, error)

NewClient creates new instance of client

func NewMockClient added in v0.4.0

func NewMockClient(scheme *runtime.Scheme, gvrToListKind map[schema.GroupVersionResource]string, objects ...runtime.Object) (*Client, error)

NewMockClient ---testing utilities

func (*Client) CreateResource

func (c *Client) CreateResource(apiVersion string, kind string, namespace string, obj interface{}, dryRun bool) (*unstructured.Unstructured, error)

CreateResource creates object for the specified resource/namespace

func (*Client) DeleteResource added in v1.1.0

func (c *Client) DeleteResource(apiVersion string, kind string, namespace string, name string, dryRun bool) error

DeleteResource deletes the specified resource

func (*Client) GetCSRInterface

func (c *Client) GetCSRInterface() (csrtype.CertificateSigningRequestInterface, error)

GetCSRInterface provides type interface for CSR

func (*Client) GetDynamicInterface added in v1.2.0

func (c *Client) GetDynamicInterface() dynamic.Interface

GetDynamicInterface fetches underlying dynamic interface

func (*Client) GetEventsInterface

func (c *Client) GetEventsInterface() (event.EventInterface, error)

GetEventsInterface provides typed interface for events TODO: can we use dynamic client to fetch the typed interface or generate a kube client value to access the interface

func (*Client) GetResource

func (c *Client) GetResource(apiVersion string, kind string, namespace string, name string, subresources ...string) (*unstructured.Unstructured, error)

GetResource returns the resource in unstructured/json format

func (*Client) GetTLSCertProps

func (c *Client) GetTLSCertProps(configuration *rest.Config) (certProps tls.CertificateProps, err error)

GetTLSCertProps provides the TLS Certificate Properties

func (*Client) InitTLSPemPair added in v1.1.0

func (c *Client) InitTLSPemPair(configuration *rest.Config, serverIP string) (*tls.PemPair, error)

InitTLSPemPair Loads or creates PEM private key and TLS certificate for webhook server. Created pair is stored in cluster's secret. Returns struct with key/certificate pair.

func (*Client) ListResource

func (c *Client) ListResource(apiVersion string, kind string, namespace string, lselector *meta.LabelSelector) (*unstructured.UnstructuredList, error)

ListResource returns the list of resources in unstructured/json format Access items using []Items

func (*Client) NewDynamicSharedInformerFactory added in v1.1.0

func (c *Client) NewDynamicSharedInformerFactory(defaultResync time.Duration) dynamicinformer.DynamicSharedInformerFactory

NewDynamicSharedInformerFactory returns a new instance of DynamicSharedInformerFactory

func (*Client) PatchResource added in v0.6.0

func (c *Client) PatchResource(apiVersion string, kind string, namespace string, name string, patch []byte) (*unstructured.Unstructured, error)

PatchResource patches the resource

func (*Client) ReadRootCASecret

func (c *Client) ReadRootCASecret() (result []byte)

ReadRootCASecret returns the RootCA from the pre-defined secret

func (*Client) ReadTLSPair added in v1.3.0

func (c *Client) ReadTLSPair(props tls.CertificateProps) *tls.PemPair

ReadTLSPair Reads the pair of TLS certificate and key from the specified secret.

func (*Client) SetDiscovery added in v0.4.0

func (c *Client) SetDiscovery(discoveryClient IDiscovery)

SetDiscovery sets the discovery client implementation

func (*Client) UpdateResource

func (c *Client) UpdateResource(apiVersion string, kind string, namespace string, obj interface{}, dryRun bool) (*unstructured.Unstructured, error)

UpdateResource updates object for the specified resource/namespace

func (*Client) UpdateStatusResource

func (c *Client) UpdateStatusResource(apiVersion string, kind string, namespace string, obj interface{}, dryRun bool) (*unstructured.Unstructured, error)

UpdateStatusResource updates the resource "status" subresource

func (*Client) WriteCACertToSecret added in v1.2.0

func (c *Client) WriteCACertToSecret(caPEM *tls.PemPair, props tls.CertificateProps) error

WriteCACertToSecret stores the CA cert in secret

func (*Client) WriteTLSPairToSecret added in v1.3.0

func (c *Client) WriteTLSPairToSecret(props tls.CertificateProps, pemPair *tls.PemPair) error

WriteTLSPairToSecret Writes the pair of TLS certificate and key to the specified secret. Updates existing secret or creates new one.

type IDiscovery added in v0.4.0

type IDiscovery interface {
	FindResource(apiVersion string, kind string) (*meta.APIResource, schema.GroupVersionResource, error)
	GetGVRFromKind(kind string) (schema.GroupVersionResource, error)
	GetGVRFromAPIVersionKind(apiVersion string, kind string) schema.GroupVersionResource
	GetServerVersion() (*version.Info, error)
	OpenAPISchema() (*openapiv2.Document, error)
	DiscoveryCache() discovery.CachedDiscoveryInterface
}

IDiscovery provides interface to mange Kind and GVR mapping

type ServerPreferredResources added in v0.4.0

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

ServerPreferredResources stores the cachedClient instance for discovery client

func (ServerPreferredResources) DiscoveryCache added in v1.3.2

DiscoveryCache gets the discovery client cache

func (ServerPreferredResources) FindResource added in v1.2.0

FindResource finds an API resource that matches 'kind'. If the resource is not found and the Cache is not fresh, the cache is invalidated and a retry is attempted

func (ServerPreferredResources) GetGVRFromAPIVersionKind added in v1.2.0

func (c ServerPreferredResources) GetGVRFromAPIVersionKind(apiVersion string, kind string) schema.GroupVersionResource

GetGVRFromAPIVersionKind get the Group Version Resource from APIVersion and kind

func (ServerPreferredResources) GetGVRFromKind added in v0.5.0

GetGVRFromKind get the Group Version Resource from kind

func (ServerPreferredResources) GetServerVersion added in v1.2.0

func (c ServerPreferredResources) GetServerVersion() (*version.Info, error)

GetServerVersion returns the server version of the cluster

func (ServerPreferredResources) OpenAPISchema added in v1.2.0

func (c ServerPreferredResources) OpenAPISchema() (*openapiv2.Document, error)

OpenAPISchema returns the API server OpenAPI schema document

func (ServerPreferredResources) Poll added in v1.1.0

func (c ServerPreferredResources) Poll(resync time.Duration, stopCh <-chan struct{})

Poll will keep invalidate the local cache

Jump to

Keyboard shortcuts

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