Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Addon ¶
type Addon interface {
// Name indicates the unique name of the Addon
Name() AddonName
// Deploy deploys the addon component to a provided cluster.
Deploy(ctx context.Context, cluster Cluster) error
// Delete removes the addon component from the given cluster.
Delete(ctx context.Context, cluster Cluster) error
// Ready is a non-blocking call which checks the status of the addon on the
// cluster and reports any runtime.Objects which are still unresolved.
// If all components are ready, this method will return [], true, nil.
// If the addon has failed unrecoverably, it will provide an error.
Ready(ctx context.Context, cluster Cluster) (waitingForObjects []runtime.Object, ready bool, err error)
}
Addon is a loadable component to extend the functionality of a Cluster.
type AddonName ¶
type AddonName string
AddonName indicates a unique name for Addons which can be deployed to Clusters.
type Cluster ¶
type Cluster interface {
// Name indicates the unique name of the running cluster.
Name() string
// Type indicates the type of Kubernetes Cluster (e.g. Kind, GKE, e.t.c.)
Type() Type
// Client is the configured *kubernetes.Clientset which can be used to access the Cluster's API
Client() *kubernetes.Clientset
// Config provides the *rest.Config for the cluster which is convenient for initiating custom kubernetes.Clientsets.
Config() *rest.Config
// Cleanup performance any cleanup and teardown needed to destroy the cluster.
Cleanup(ctx context.Context) error
// GetAddon retrieves and Addon object from the cluster if that addon was previously loaded.
GetAddon(name AddonName) (Addon, error)
// ListAddons lists the addon components currently loaded into the cluster.
ListAddons() []Addon
// DeployAddon deploys a new addon component to the cluster.
DeployAddon(ctx context.Context, addon Addon) error
// DeleteAddon removes an existing cluster Addon.
DeleteAddon(ctx context.Context, addon Addon) error
}
Cluster objects represent a running Kubernetes cluster.
Click to show internal directories.
Click to hide internal directories.