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

func NewFakeDiscoveryClient(registeredResouces []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

        func NewMockClient(scheme *runtime.Scheme, 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

            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) GetDiscoveryCache

                func (c *Client) GetDiscoveryCache() discovery.CachedDiscoveryInterface

                  GetDiscoveryCache gets the discovery client cache

                  func (*Client) GetDynamicInterface

                  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) GetKubePolicyDeployment

                      func (c *Client) GetKubePolicyDeployment() (*apps.Deployment, error)

                        GetKubePolicyDeployment returns kube policy depoyment value

                        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.TlsCertificateProps, err error)

                            GetTLSCertProps provides the TLS Certificate Properties

                            func (*Client) InitTLSPemPair

                            func (c *Client) InitTLSPemPair(configuration *rest.Config, fqdncn bool) (*tls.TlsPemPair, 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

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

                                  NewDynamicSharedInformerFactory returns a new instance of DynamicSharedInformerFactory

                                  func (*Client) PatchResource

                                  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

                                      func (c *Client) ReadTlsPair(props tls.TlsCertificateProps) *tls.TlsPemPair

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

                                        func (*Client) SetDiscovery

                                        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) WriteTlsPair

                                              func (c *Client) WriteTlsPair(props tls.TlsCertificateProps, pemPair *tls.TlsPemPair) error

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

                                                type IDiscovery

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

                                                  IDiscovery provides interface to mange Kind and GVR mapping

                                                  type ServerPreferredResources

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

                                                    ServerPreferredResources stores the cachedClient instance for discovery client

                                                    func (ServerPreferredResources) FindResource

                                                      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

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

                                                        GetGVRFromAPIVersionKind get the Group Version Resource from APIVersion and kind

                                                        func (ServerPreferredResources) GetGVRFromKind

                                                          GetGVRFromKind get the Group Version Resource from kind

                                                          func (ServerPreferredResources) GetServerVersion

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

                                                            GetServerVersion returns the server version of the cluster

                                                            func (ServerPreferredResources) OpenAPISchema

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

                                                              OpenAPISchema returns the API server OpenAPI schema document

                                                              func (ServerPreferredResources) Poll

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

                                                                Poll will keep invalidate the local cache