controllerinstallation

package
v1.138.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2026 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// SeedSpecHash is a constant for a label on `ControllerInstallation`s (similar to `pod-template-hash` on `Pod`s).
	SeedSpecHash = "seed-spec-hash"
	// ShootSpecHash is a constant for a label on `ControllerInstallation`s (similar to `pod-template-hash` on `Pod`s).
	ShootSpecHash = "shoot-spec-hash"
	// ControllerDeploymentHash is a constant for a label on `ControllerInstallation`s (similar to `pod-template-hash`
	// on `Pod`s).
	ControllerDeploymentHash = "deployment-hash"
	// RegistrationSpecHash is a constant for a label on `ControllerInstallation`s (similar to `pod-template-hash` on
	// Pod`s).
	RegistrationSpecHash = "registration-spec-hash"
)

Variables

This section is empty.

Functions

func BackupBucketPredicate

func BackupBucketPredicate(kind Kind) predicate.Predicate

BackupBucketPredicate returns true for all BackupBucket events. For updates, it only returns true when there is a change in the .spec.seedName or .spec.provider.type fields.

func BackupEntryPredicate

func BackupEntryPredicate(kind Kind) predicate.Predicate

BackupEntryPredicate returns true for all BackupEntry events. For updates, it only returns true when there is a change in the .spec.seedName or .spec.bucketName fields.

func ControllerInstallationPredicate

func ControllerInstallationPredicate(kind Kind) predicate.Predicate

ControllerInstallationPredicate returns true for all ControllerInstallation 'create' events. For updates, it only returns true when the Required condition's status has changed. For other events, false is returned.

func ShootPredicate

func ShootPredicate(kind Kind) predicate.Predicate

ShootPredicate returns true for all Shoot events. For updates, it only returns true when there is a change in the .spec.provider.workers or .spec.extensions or .spec.dns or .spec.networking.type or .spec.provider.type fields.

Types

type Kind

type Kind string

Kind is a string alias.

const (
	// SeedKind indicates that the controller acts on Seeds.
	SeedKind Kind = "seed"
	// ShootKind indicates that the controller acts on self-hosted Shoots.
	ShootKind Kind = "shoot"
)

type Reconciler

type Reconciler struct {
	APIReader           client.Reader
	Client              client.Client
	NewTargetObjectFunc func() client.Object
	Kind                Kind
}

Reconciler determines which ControllerRegistrations are required for a given Seed or Shoot by checking all objects in the garden cluster, that need to be considered for that Seed or Shoot (e.g. because they reference it). It then deploys wanted and deletes unneeded ControllerInstallations accordingly. Seeds or Shoots get enqueued by updates to relevant (referencing) objects, e.g. Shoots, BackupBuckets, etc.

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile(ctx context.Context, request reconcile.Request) (reconcile.Result, error)

Reconcile performs the main reconciliation logic.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL