dnsrecord

package
v1.149.2 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2026 License: Apache-2.0 Imports: 18 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// DefaultAddOptions are the default AddOptions for AddToManager.
	DefaultAddOptions = AddOptions{}
)

Functions

func AddToManager

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

AddToManager adds a controller with the default Options.

func AddToManagerWithOptions

func AddToManagerWithOptions(ctx context.Context, 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 added in v1.129.0

type Actuator struct {
	DNSClient DNSClient
}

Actuator implements the DNSRecord actuator for the local DNS provider.

func (*Actuator) Delete added in v1.129.0

Delete removes the DNS record via RFC 2136 dynamic DNS update.

func (*Actuator) ForceDelete added in v1.129.0

func (a *Actuator) ForceDelete(ctx context.Context, log logr.Logger, dnsRecord *extensionsv1alpha1.DNSRecord, cluster *extensionscontroller.Cluster) error

ForceDelete is the same as Delete for the local DNS provider.

func (*Actuator) Migrate added in v1.129.0

func (a *Actuator) Migrate(ctx context.Context, log logr.Logger, dnsRecord *extensionsv1alpha1.DNSRecord, cluster *extensionscontroller.Cluster) error

Migrate removes the DNS record if the shoot is not self-hosted.

func (*Actuator) Reconcile added in v1.129.0

Reconcile ensures that the DNS record is correctly represented via RFC 2136 dynamic DNS update.

func (*Actuator) Restore added in v1.129.0

func (a *Actuator) Restore(ctx context.Context, log logr.Logger, dnsRecord *extensionsv1alpha1.DNSRecord, cluster *extensionscontroller.Cluster) error

Restore is the same as Reconcile for the local DNS provider.

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 are the configured extension classes for this extension deployment.
	ExtensionClasses []extensionsv1alpha1.ExtensionClass
}

AddOptions are options to apply when adding the local dnsrecord controller to the manager.

type ControllerConfig added in v1.54.0

type ControllerConfig struct {
	// MaxConcurrentReconciles is the maximum number of concurrent reconciles.
	MaxConcurrentReconciles int
}

ControllerConfig is a completed controller configuration.

func (*ControllerConfig) Apply added in v1.54.0

func (c *ControllerConfig) Apply(opts *AddOptions)

Apply sets the values of this ControllerConfig in the given AddOptions.

type ControllerOptions added in v1.54.0

type ControllerOptions struct {
	// MaxConcurrentReconciles are the maximum concurrent reconciles.
	MaxConcurrentReconciles int
	// contains filtered or unexported fields
}

ControllerOptions are command line options that can be set for controller.Options.

func (*ControllerOptions) AddFlags added in v1.54.0

func (c *ControllerOptions) AddFlags(fs *pflag.FlagSet)

AddFlags implements Flagger.AddFlags.

func (*ControllerOptions) Complete added in v1.54.0

func (c *ControllerOptions) Complete() error

Complete implements Completer.Complete.

func (*ControllerOptions) Completed added in v1.54.0

func (c *ControllerOptions) Completed() *ControllerConfig

Completed returns the completed ControllerConfig. Only call this if `Complete` was successful.

type DNSClient

type DNSClient interface {
	Exchange(msg *dns.Msg, addr string) (*dns.Msg, time.Duration, error)
}

DNSClient is an interface for sending DNS messages, allowing for testability.

Jump to

Keyboard shortcuts

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