selfhostedshootexposure

package
v2.13.0 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2026 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ExposureLabelKey = "exposure.stackit.cloud"
)

Variables

View Source
var DefaultAddOptions = AddOptions{}

DefaultAddOptions are the default AddOptions for AddToManager.

Functions

func AddToManager

func AddToManager(_ context.Context, mgr manager.Manager) error

AddToManager adds a controller with the default Options.

func AddToManagerWithOptions

func AddToManagerWithOptions(mgr manager.Manager, opts AddOptions) error

AddToManagerWithOptions adds a controller with the given Options to the given manager. The opts.Reconciler is being set with a newly instantiated Actuator.

Types

type Actuator

type Actuator struct {
	Client  client.Client
	Decoder runtime.Decoder
}

func (*Actuator) Delete

func (*Actuator) DetermineOptions

func (a *Actuator) DetermineOptions(ctx context.Context, exposure *extensionsv1alpha1.SelfHostedShootExposure, cluster *extensionscontroller.Cluster, projectID string) (*Options, error)

func (*Actuator) WithManager

func (a *Actuator) WithManager(mgr manager.Manager) *Actuator

type AddOptions

type AddOptions struct {
	// Controller are the controller.Options.
	Controller controller.Options
	// IgnoreOperationAnnotation specifies whether to ignore the operation annotation or not.
	IgnoreOperationAnnotation bool
	// ExtensionClasses defines the extension class this extension is responsible for.
	ExtensionClasses []extensionsv1alpha1.ExtensionClass
}

AddOptions are Options to apply when adding the SelfHostedShootExposure controller to the manager.

type Options

type Options struct {
	SelfHostedShootExposure *extensionsv1alpha1.SelfHostedShootExposure

	// ProjectID is the STACKIT project ID of the shoot. Currently determined from the cloudprovider (credentials) secret.
	ProjectID string
	// ResourceName of all STACKIT resources for this SelfHostedShootExposure.
	ResourceName string
	// Labels added to all STACKIT resources.
	Labels map[string]string

	// Region for the LB, determined from Cluster.spec.shoot.spec.region (RegionOne is replaced with eu01).
	Region string
	// NetworkID is the ID of the network where the control plane nodes reside.
	NetworkID string
	// PlanID specifies the service plan (size) of the load balancer.
	PlanID string
	// AllowedSourceRanges restricts which source CIDRs may reach the load balancer.
	// Empty means unrestricted.
	AllowedSourceRanges []string
}

Options contains all input required for creating a STACKIT LB for a self-hosted shoot on STACKIT. The options are determined from the SelfHostedShootExposure and Cluster object.

type Resources

type Resources struct {
	Options
	LBClient stackitclient.LoadBalancingClient

	LoadBalancer *loadbalancer.LoadBalancer
}

Resources holds the STACKIT resources created for a Self-hosted Shoot Exposure along with all inputs (options) and the needed clients.

Jump to

Keyboard shortcuts

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