Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ControlInterface ¶
type ControlInterface interface { // ReconcileBackupInfrastructure implements the control logic for BackupInfrastructure creation, update, and deletion. // If an implementation returns a non-nil error, the invocation will be retried using a rate-limited strategy. // Implementors should sink any errors that they do not wish to trigger a retry, and they may feel free to // exit exceptionally at any point provided they wish the update to be re-run at a later point in time. ReconcileBackupInfrastructure(backupInfrastructure *gardenv1beta1.BackupInfrastructure, key string) error }
ControlInterface implements the control logic for updating BackupInfrastructures. It is implemented as an interface to allow for extensions that provide different semantics. Currently, there is only one implementation.
func NewDefaultControl ¶
func NewDefaultControl(k8sGardenClient kubernetes.Client, k8sGardenInformers gardeninformers.Interface, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, identity *gardenv1beta1.Gardener, config *componentconfig.ControllerManagerConfiguration, recorder record.EventRecorder, updater UpdaterInterface) ControlInterface
NewDefaultControl returns a new instance of the default implementation ControlInterface that implements the documented semantics for BackupInfrastructures. You should use an instance returned from NewDefaultControl() for any scenario other than testing.
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller controls BackupInfrastructures.
func NewBackupInfrastructureController ¶
func NewBackupInfrastructureController(k8sGardenClient kubernetes.Client, gardenInformerFactory gardeninformers.SharedInformerFactory, config *componentconfig.ControllerManagerConfiguration, identity *gardenv1beta1.Gardener, gardenNamespace string, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, recorder record.EventRecorder) *Controller
NewBackupInfrastructureController takes a Kubernetes client for the Garden clusters <k8sGardenClient>, a struct holding information about the acting Gardener, a <backupInfrastructureInformer>, and a <recorder> for event recording. It creates a new Gardener controller.
func (*Controller) Run ¶
func (c *Controller) Run(workers int, stopCh <-chan struct{})
Run runs the Controller until the given stop channel can be read from.
func (*Controller) RunningWorkers ¶
func (c *Controller) RunningWorkers() int
RunningWorkers returns the number of running workers.
type UpdaterInterface ¶
type UpdaterInterface interface {
UpdateBackupInfrastructureStatus(backupInfrastructure *gardenv1beta1.BackupInfrastructure) (*gardenv1beta1.BackupInfrastructure, error)
}
UpdaterInterface is an interface used to update the BackupInfrastructure manifest. For any use other than testing, clients should create an instance using NewRealUpdater.
func NewRealUpdater ¶
func NewRealUpdater(k8sGardenClient kubernetes.Client, backupInfrastructureLister gardenlisters.BackupInfrastructureLister) UpdaterInterface
NewRealUpdater returns a UpdaterInterface that updates the BackupInfrastructure manifest, using the supplied client and backupInfrastructureLister.