Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Cluster ¶
type Cluster interface { // GetHTTPClient returns an HTTP client that can be used to talk to the apiserver GetHTTPClient() *http.Client // GetConfig returns an initialized Config GetConfig() *rest.Config // GetCache returns a cache.Cache GetCache() cache.Cache // GetScheme returns an initialized Scheme GetScheme() *runtime.Scheme // GetClient returns a client configured with the Config. This client may // not be a fully "direct" client -- it may read from a cache, for // instance. See Options.NewClient for more information on how the default // implementation works. GetClient() client.Client // GetFieldIndexer returns a client.FieldIndexer configured with the client GetFieldIndexer() client.FieldIndexer // GetEventRecorderFor returns a new EventRecorder for the provided name GetEventRecorderFor(name string) record.EventRecorder // GetRESTMapper returns a RESTMapper GetRESTMapper() meta.RESTMapper // GetAPIReader returns a reader that will be configured to use the API server. // This should be used sparingly and only when the client does not fit your // use case. GetAPIReader() client.Reader // Start starts the cluster Start(ctx context.Context) error }
Cluster provides various methods to interact with a cluster.
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 // MapperProvider provides the rest mapper used to map go types to Kubernetes APIs MapperProvider func(c *rest.Config, httpClient *http.Client) (meta.RESTMapper, error) // Logger is the logger that should be used by this Cluster. // If none is set, it defaults to log.Log global logger. Logger logr.Logger // 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 // Namespace if specified restricts the manager's cache to watch objects in // the desired namespace Defaults to all namespaces // // Note: If a namespace is specified, controllers can still Watch for a // cluster-scoped resource (e.g Node). For namespaced resources the cache // will only hold objects from the desired namespace. // // Deprecated: Use Cache.Namespaces instead. Namespace string // HTTPClient is the http client that will be used to create the default // Cache and Client. If not set the rest.HTTPClientFor function will be used // to create the http client. HTTPClient *http.Client // Cache is the cache.Options that will be used to create the default Cache. // By default, the cache will watch and list requested objects in all namespaces. Cache cache.Options // NewCache is the function that will create the cache to be used // by the manager. If not set this will use the default new cache function. // // When using a custom NewCache, the Cache options will be passed to the // NewCache function. // // NOTE: LOW LEVEL PRIMITIVE! // Only use a custom NewCache if you know what you are doing. NewCache cache.NewCacheFunc // Client is the client.Options that will be used to create the default Client. // By default, the client will use the cache for reads and direct calls for writes. Client client.Options // NewClient is the func that creates the client to be used by the manager. // If not set this will create a Client backed by a Cache for read operations // and a direct Client for write operations. // // When using a custom NewClient, the Client options will be passed to the // NewClient function. // // NOTE: LOW LEVEL PRIMITIVE! // Only use a custom NewClient if you know what you are doing. NewClient client.NewClientFunc // ClientDisableCacheFor tells the client that, if any cache is used, to bypass it // for the given objects. // // Deprecated: Use Client.Cache.DisableFor instead. ClientDisableCacheFor []client.Object // DryRunClient specifies whether the client should be configured to enforce // dryRun mode. // // Deprecated: Use Client.DryRun instead. DryRunClient bool // EventBroadcaster records Events emitted by the manager and sends them to the Kubernetes API // Use this to customize the event correlator and spam filter // // Deprecated: using this may cause goroutine leaks if the lifetime of your manager or controllers // is shorter than the lifetime of your process. EventBroadcaster record.EventBroadcaster // contains filtered or unexported fields }
Options are the possible options that can be configured for a Cluster.
Click to show internal directories.
Click to hide internal directories.