Documentation ¶
Overview ¶
Package kubernetes is an util library to deal with kubernetes.
Package kubernetes is an util library to deal with kubernetes.
Package kubernetes is an util library to deal with kubernetes.
Package kubernetes is an util library to deal with kubernetes.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var SetCrossNamespaceOwnerReference = setCrossNamespaceOwnerReference
SetCrossNamespaceOwnerReference allows you to set an owner from another namespace This is used for garbage collection of the controlled object and for reconciling the owner object on changes to controlled (with a Watch + EnqueueRequestForOwner). Since only one OwnerReference can be a controller, it returns an error if there is another OwnerReference with Controller flag set
var SetOwnerReference = setOwnerReference
SetOwnerReference sets owner as a Controller OwnerReference on controlled. This is used for garbage collection of the controlled object and for reconciling the owner object on changes to controlled (with a Watch + EnqueueRequestForOwner). Since only one OwnerReference can be a controller, it returns an error if there is another OwnerReference with Controller flag set.
Functions ¶
func Config ¶
func Config(config RestClientConfiguration) *rest.Config
Config creates rest client configuration with TokenBucketRateLimiter.
Types ¶
type Client ¶
type Client interface { ctrlClient.Client Start(ctx context.Context) error GetUncached(ctx context.Context, key ctrlClient.ObjectKey, obj ctrlClient.Object, opts ...ctrlClient.GetOption) error ListUncached(ctx context.Context, list ctrlClient.ObjectList, opts ...ctrlClient.ListOption) error }
Client is an interface that extends "ctrlClient.Client" and adds additional methods for starting and retrieving uncached objects.
type Options ¶
type Options struct { // Scheme is the scheme used to resolve runtime.Objects to GroupVersionKinds / Resources // Defaults to the kubernetes/client-go scheme.Scheme, but it's almost always better // idea to pass your own scheme in. See the documentation in pkg/scheme for more information. Scheme *runtime.Scheme // SyncPeriod determines the minimum frequency at which watched resources are // reconciled. A lower period will correct entropy more quickly, but reduce // responsiveness to change if there are many watched resources. Change this // value only if you know what you are doing. Defaults to 10 hours if unset. // there will a 10 percent jitter between the SyncPeriod of all controllers // so that all controllers will not send list requests simultaneously. SyncPeriod *time.Duration // DisableCacheFor tells the client that, if any cache is used, to bypass it // for the given objects. DisableCacheFor []ctrlClient.Object }
Options are the possible options that can be configured in a kubernetes Client.
type RestClientConfiguration ¶
type RestClientConfiguration struct { ClientQPS float32 `envconfig:"K8S_REST_CLIENT_QPS" default:"100"` ClientBurst int `envconfig:"K8S_REST_CLIENT_BURST" default:"500"` }
RestClientConfiguration defines required variables to configure the environment
func (*RestClientConfiguration) LoadFromEnvVars ¶
func (c *RestClientConfiguration) LoadFromEnvVars() error
LoadFromEnvVars for RestClientConfiguration.