controller

package
v0.5.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	BIOSSettingsFinalizer = "metal.ironcore.dev/biossettings"

	ConditionPendingSettingsCheck     = "PendingSettingsCheck"
	ConditionSettingsDuplicateKeys    = "SettingsDuplicateKeys"
	ConditionSettingsUpdateStartTime  = "SettingsUpdateStartTime"
	ConditionSettingsTimedOut         = "SettingsTimedOut"
	ConditionSettingsServerPowerOn    = "ServerPowerOn"
	ConditionSettingsUpdateIssued     = "SettingsUpdateIssued"
	ConditionSettingsUnknownPending   = "UnknownPendingSettingState"
	ConditionSettingsRebootPostUpdate = "RebootPostUpdate"
	ConditionSettingsRebootPowerOff   = "RebootPowerOff"
	ConditionSettingsRebootPowerOn    = "RebootPowerOn"
	ConditionSettingsVerify           = "VerifySettingsPostUpdate"
	ConditionSettingsValidationFailed = "SettingsValidationFailed"

	ReasonPendingSettingsFound          = "PendingSettingsFound"
	ReasonSettingsDuplicateKeysFound    = "SettingsDuplicateKeysFound"
	ReasonSettingsUpdateStarted         = "SettingsUpdateStarted"
	ReasonSettingsTimedOut              = "SettingsTimedOutDuringUpdate"
	ReasonSettingsServerPoweredOn       = "ServerPoweredOn"
	ReasonSettingsUpdateIssued          = "SettingsUpdateIssued"
	ReasonSettingsUnexpectedPending     = "UnexpectedPendingSettings"
	ReasonSettingsSkipReboot            = "SkipServerReboot"
	ReasonSettingsRebootNeeded          = "RebootPostSettingUpdate"
	ReasonSettingsRebootPowerOff        = "PowerOffCompletedDuringReboot"
	ReasonSettingsRebootPowerOn         = "PowerOnCompletedDuringReboot"
	ReasonSettingsVerificationCompleted = "VerificationCompleted"
	ReasonSettingsVerificationNotDone   = "VerificationNotCompleted"
	ReasonSettingsValidationFailed      = "SettingsValidationFailed"
)
View Source
const (
	BIOSVersionFinalizer = "metal.ironcore.dev/biosversion"

	ConditionUpgradePowerOn  = "VersionUpgradePowerOn"
	ConditionUpgradePowerOff = "VersionUpgradePowerOff"

	ReasonRebootPowerOff = "RebootPowerOff"
	ReasonRebootPowerOn  = "RebootPowerOn"
)

BIOSVersionReconciler reconciles a BIOSVersion object

View Source
const (
	BMCSettingFinalizer = "metal.ironcore.dev/bmcsettings"

	ConditionBMCResetPostSettingApply    = "ResetPostSettingApply"
	ConditionBMCPoweredOff               = "PoweredOff"
	ConditionBMCSettingsChangesIssued    = "ChangesIssued"
	ConditionBMCSettingsChangesVerified  = "ChangesVerified"
	ConditionBMCSettingsValidationFailed = "SettingsValidationFailed"

	ReasonBMCPoweredOff                  = "PoweredOff"
	ReasonBMCVersionMatching             = "VersionMatching"
	ReasonBMCSettingsChangesIssued       = "ChangesIssued"
	ReasonBMCSettingsChangesVerified     = "ChangesVerified"
	ReasonBMCSettingsVerificationPending = "SettingsVerificationPending"
	ReasonBMCSettingsValidationFailed    = "SettingsValidationFailed"
)
View Source
const (
	// ConditionServerMaintenanceCreated indicates a ServerMaintenance resource has been created.
	ConditionServerMaintenanceCreated = "ServerMaintenanceCreated"
	// ConditionServerMaintenanceDeleted indicates a ServerMaintenance resource has been deleted.
	ConditionServerMaintenanceDeleted = "ServerMaintenanceDeleted"
	// ConditionServerMaintenanceWaiting indicates waiting for ServerMaintenance approval.
	ConditionServerMaintenanceWaiting = "ServerMaintenanceWaiting"
	// ConditionResetIssued indicates a reset has been issued.
	ConditionResetIssued = "ResetIssued"
	// ConditionVersionUpgradeIssued indicates a version upgrade has been issued.
	ConditionVersionUpgradeIssued = "VersionUpgradeIssued"
	// ConditionVersionUpgradeCompleted indicates a version upgrade has completed.
	ConditionVersionUpgradeCompleted = "VersionUpgradeCompleted"
	// ConditionVersionUpgradeVerification indicates version upgrade verification is in progress.
	ConditionVersionUpgradeVerification = "VersionUpgradeVerification"
	// ConditionVersionUpgradeReboot indicates a reboot during version upgrade.
	ConditionVersionUpgradeReboot = "VersionUpgradeReboot"
	// ConditionVersionUpdatePending indicates a version update is pending.
	ConditionVersionUpdatePending = "VersionUpdatePending"
	// ConditionPoweringOn indicates a server is powering on.
	ConditionPoweringOn = "PoweringOn"
	// ConditionReset indicates a reset condition.
	ConditionReset = "Reset"
	// ConditionReady indicates readiness.
	ConditionReady = "Ready"
	// ConditionRetryOfFailedResourceIssued indicates a retry of a failed resource has been issued.
	ConditionRetryOfFailedResourceIssued = "RetryOfFailedResourceIssued"
)

Shared condition types used across multiple controllers.

View Source
const (
	// ReasonUpgradeIssued indicates an upgrade has been issued.
	ReasonUpgradeIssued = "UpgradeIssued"
	// ReasonUpgradeTaskFailed indicates an upgrade task has failed.
	ReasonUpgradeTaskFailed = "UpgradeTaskFailed"
	// ReasonUpgradeIssueFailed indicates an upgrade failed to be issued.
	ReasonUpgradeIssueFailed = "UpgradeIssueFailed"
	// ReasonUpgradeTaskCompleted indicates an upgrade task has completed.
	ReasonUpgradeTaskCompleted = "UpgradeTaskCompleted"
	// ReasonVersionUpdateVerified indicates a version update has been verified.
	ReasonVersionUpdateVerified = "VersionUpdateVerified"
	// ReasonVersionVerificationFailed indicates version verification has failed.
	ReasonVersionVerificationFailed = "VersionVerificationFailed"
	// ReasonVersionUpgradePending indicates a version upgrade is pending.
	ReasonVersionUpgradePending = "VersionUpgradePending"
	// ReasonResetIssued indicates a reset has been issued.
	ReasonResetIssued = "ResetIssued"
	// ReasonAuthenticationFailed indicates authentication has failed.
	ReasonAuthenticationFailed = "AuthenticationFailed"
	// ReasonInternalError indicates an internal server error.
	ReasonInternalError = "InternalServerError"
	// ReasonUnknownError indicates an unknown error.
	ReasonUnknownError = "UnknownError"
	// ReasonConnectionFailed indicates a connection failure.
	ReasonConnectionFailed = "ConnectionFailed"
	// ReasonUserReset indicates a user-requested reset.
	ReasonUserReset = "UserRequested"
	// ReasonAutoReset indicates an automatic reset.
	ReasonAutoReset = "AutoResetting"
	// ReasonConnected indicates a successful connection.
	ReasonConnected = "Connected"
	// ReasonMaintenanceCreated indicates a ServerMaintenance resource has been created.
	ReasonMaintenanceCreated = "ServerMaintenanceHasBeenCreated"
	// ReasonMaintenanceDeleted indicates a ServerMaintenance resource has been deleted.
	ReasonMaintenanceDeleted = "ServerMaintenanceHasBeenDeleted"
	// ReasonMaintenanceWaiting indicates waiting for ServerMaintenance approval.
	ReasonMaintenanceWaiting = "ServerMaintenanceWaitingOnApproval"
	// ReasonMaintenanceApproved indicates ServerMaintenance has been approved.
	ReasonMaintenanceApproved = "ServerMaintenanceApproval"
	// ReasonRetryOfFailedResourceIssued indicates a retry of a failed resource has been issued.
	ReasonRetryOfFailedResourceIssued = "RetryOfFailedResourceIssued"
)

Shared reason strings used across multiple controllers.

View Source
const (
	// DefaultIgnitionSecretKeyName is the default key name for the ignition secret
	DefaultIgnitionSecretKeyName = "ignition"
	// DefaultIgnitionFormatKey is the key for the ignition format annotation
	DefaultIgnitionFormatKey = "format"
	// DefaultIgnitionFormatValue is the value for the ignition format annotation
	DefaultIgnitionFormatValue = "fcos"
	// SSHKeyPairSecretPrivateKeyName is the key name for the private key in the SSH key pair secret
	SSHKeyPairSecretPrivateKeyName = "pem"
	// SSHKeyPairSecretPublicKeyName is the key name for the public key in the SSH key pair secret
	SSHKeyPairSecretPublicKeyName = "pub"
	// SSHKeyPairSecretPasswordKeyName is the key name for the password in the SSH key pair secret
	SSHKeyPairSecretPasswordKeyName = "password"
	// ServerFinalizer is the finalizer for the server
	ServerFinalizer = "metal.ironcore.dev/server"
	// InternalAnnotationTypeKeyName is the key name for the internal annotation type
	InternalAnnotationTypeKeyName = "metal.ironcore.dev/type"
	// IsDefaultServerBootConfigOSImageKeyName is the key name for the is default OS image annotation
	IsDefaultServerBootConfigOSImageKeyName = "metal.ironcore.dev/is-default-os-image"
	// InternalAnnotationTypeValue is the value for the internal annotation type
	InternalAnnotationTypeValue = "Internal"
)
View Source
const (
	BIOSVersionSetFinalizer = "metal.ironcore.dev/biosversionset"
)
View Source
const (
	BMCFinalizer = "metal.ironcore.dev/bmc"
)
View Source
const (
	BMCSettingsSetFinalizer = "metal.ironcore.dev/bmcsettingsset"
)
View Source
const (
	BMCVersionSetFinalizer = "metal.ironcore.dev/bmcversionset"
)

Variables

This section is empty.

Functions

func ApplyVariables added in v0.5.0

func ApplyVariables(settingsMap map[string]string, resolved map[string]string) map[string]string

ApplyVariables substitutes $(KEY) placeholders in each settingsMap value using the resolved variable map. Returns the original map unchanged if resolved is empty.

func GenerateRandomPassword

func GenerateRandomPassword(length int) ([]byte, error)

GenerateRandomPassword generates a random password of the given length.

func GetCondition added in v0.2.0

func GetCondition(acc *conditionutils.Accessor, conditions []metav1.Condition, conditionType string) (*metav1.Condition, error)

GetCondition finds a condition in a condition slice. If the condition is not found, a new one with Status=False is returned.

func GetImageCredentialsForSecretRef added in v0.2.0

func GetImageCredentialsForSecretRef(ctx context.Context, c client.Client, secretRef *corev1.SecretReference) (string, string, error)

func GetServerByName added in v0.2.0

func GetServerByName(ctx context.Context, c client.Client, serverName string) (*metalv1alpha1.Server, error)

GetServerByName returns a Server object by its name or an error in case the object can not be found.

func GetServerMaintenanceForObjectReference added in v0.2.0

func GetServerMaintenanceForObjectReference(ctx context.Context, c client.Client, ref *metalv1alpha1.ObjectReference) (*metalv1alpha1.ServerMaintenance, error)

GetServerMaintenanceForObjectReference returns a ServerMaintenance object for a given reference.

func RegisterIndexFields added in v0.2.0

func RegisterIndexFields(ctx context.Context, indexer client.FieldIndexer) error

func ResolveVariables added in v0.5.0

func ResolveVariables(
	ctx context.Context,
	c client.Client,
	owner client.Object,
	variables []metalv1alpha1.Variable,
) (map[string]string, error)

ResolveVariables resolves the Variables list into a flat key→value map. Returns an error if any variable cannot be resolved.

Types

type BIOSSettingsReconciler added in v0.2.0

type BIOSSettingsReconciler struct {
	client.Client
	ManagerNamespace            string
	DefaultProtocol             metalv1alpha1.ProtocolScheme
	SkipCertValidation          bool
	Scheme                      *runtime.Scheme
	BMCOptions                  bmc.Options
	ResyncInterval              time.Duration
	TimeoutExpiry               time.Duration
	Conditions                  *conditionutils.Accessor
	DefaultFailedAutoRetryCount int32
}

BIOSSettingsReconciler reconciles a BIOSSettings object

func (*BIOSSettingsReconciler) Reconcile added in v0.2.0

func (r *BIOSSettingsReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BIOSSettingsReconciler) SetupWithManager added in v0.2.0

func (r *BIOSSettingsReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BIOSSettingsSetReconciler

type BIOSSettingsSetReconciler struct {
	client.Client
	Scheme         *runtime.Scheme
	ResyncInterval time.Duration
}

BIOSSettingsSetReconciler reconciles a BIOSSettingsSet object

func (*BIOSSettingsSetReconciler) Reconcile

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BIOSSettingsSetReconciler) SetupWithManager

func (r *BIOSSettingsSetReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BIOSVersionReconciler

type BIOSVersionReconciler struct {
	client.Client
	ManagerNamespace            string
	DefaultProtocol             metalv1alpha1.ProtocolScheme
	SkipCertValidation          bool
	Scheme                      *runtime.Scheme
	BMCOptions                  bmc.Options
	ResyncInterval              time.Duration
	Conditions                  *conditionutils.Accessor
	DefaultFailedAutoRetryCount int32
}

func (*BIOSVersionReconciler) Reconcile

func (r *BIOSVersionReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BIOSVersionReconciler) SetupWithManager

func (r *BIOSVersionReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BIOSVersionSetReconciler

type BIOSVersionSetReconciler struct {
	client.Client
	Scheme         *runtime.Scheme
	ResyncInterval time.Duration
}

BIOSVersionSetReconciler reconciles a BIOSVersionSet object

func (*BIOSVersionSetReconciler) Reconcile

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BIOSVersionSetReconciler) SetupWithManager

func (r *BIOSVersionSetReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCReconciler

type BMCReconciler struct {
	client.Client
	Scheme             *runtime.Scheme
	DefaultProtocol    metalv1alpha1.ProtocolScheme
	SkipCertValidation bool
	// BMCFailureResetDelay defines the duration after which a BMC will be reset upon repeated connection failures.
	BMCFailureResetDelay time.Duration
	BMCOptions           bmc.Options
	ManagerNamespace     string
	EventURL             string
	// BMCResetWaitTime defines the duration to wait after a BMC reset before attempting reconciliation again.
	BMCResetWaitTime time.Duration
	// BMCClientRetryInterval defines the duration to requeue reconciliation after a BMC client error/reset/unavailablility.
	BMCClientRetryInterval time.Duration
	// DNSRecordTemplatePath is the path to the file containing the DNSRecord template.
	DNSRecordTemplate string
	Conditions        *conditionutils.Accessor
}

BMCReconciler reconciles a BMC object

func (*BMCReconciler) Reconcile

func (r *BMCReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCReconciler) SetupWithManager

func (r *BMCReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCSecretReconciler

type BMCSecretReconciler struct {
	client.Client
	Scheme *runtime.Scheme
}

BMCSecretReconciler reconciles a BMCSecret object

func (*BMCSecretReconciler) Reconcile

func (r *BMCSecretReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state. TODO(user): Modify the Reconcile function to compare the state specified by the BMCSecret object against the actual cluster state, and then perform operations to make the cluster state reflect the state specified by the user.

For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.23.3/pkg/reconcile

func (*BMCSecretReconciler) SetupWithManager

func (r *BMCSecretReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCSettingsReconciler

type BMCSettingsReconciler struct {
	client.Client
	ManagerNamespace            string
	ResyncInterval              time.Duration
	DefaultProtocol             metalv1alpha1.ProtocolScheme
	SkipCertValidation          bool
	Scheme                      *runtime.Scheme
	BMCOptions                  bmc.Options
	Conditions                  *conditionutils.Accessor
	DefaultFailedAutoRetryCount int32
}

BMCSettingsReconciler reconciles a BMCSettings object

func (*BMCSettingsReconciler) Reconcile

func (r *BMCSettingsReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCSettingsReconciler) SetupWithManager

func (r *BMCSettingsReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCSettingsSetReconciler added in v0.2.0

type BMCSettingsSetReconciler struct {
	client.Client
	Scheme         *runtime.Scheme
	ResyncInterval time.Duration
}

func (*BMCSettingsSetReconciler) Reconcile added in v0.2.0

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCSettingsSetReconciler) SetupWithManager added in v0.2.0

func (r *BMCSettingsSetReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCTaskFetchFailedError added in v0.4.0

type BMCTaskFetchFailedError struct {
	TaskURI  string
	Resource string
	Err      error
}

func (BMCTaskFetchFailedError) Error added in v0.4.0

func (e BMCTaskFetchFailedError) Error() string

type BMCUserReconciler added in v0.3.0

type BMCUserReconciler struct {
	client.Client
	Scheme             *runtime.Scheme
	DefaultProtocol    metalv1alpha1.ProtocolScheme
	SkipCertValidation bool
	BMCOptions         bmc.Options
}

BMCUserReconciler reconciles a BMCUser object

func (*BMCUserReconciler) Reconcile added in v0.3.0

func (r *BMCUserReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCUserReconciler) SetupWithManager added in v0.3.0

func (r *BMCUserReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCVersionReconciler

type BMCVersionReconciler struct {
	client.Client
	ManagerNamespace            string
	DefaultProtocol             metalv1alpha1.ProtocolScheme
	SkipCertValidation          bool
	Scheme                      *runtime.Scheme
	BMCOptions                  bmc.Options
	ResyncInterval              time.Duration
	Conditions                  *conditionutils.Accessor
	DefaultFailedAutoRetryCount int32
}

BMCVersionReconciler reconciles a BMCVersion object

func (*BMCVersionReconciler) Reconcile

func (r *BMCVersionReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCVersionReconciler) SetupWithManager

func (r *BMCVersionReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type BMCVersionSetReconciler

type BMCVersionSetReconciler struct {
	client.Client
	Scheme         *runtime.Scheme
	ResyncInterval time.Duration
}

BMCVersionSetReconciler reconciles a BMCVersionSet object

func (*BMCVersionSetReconciler) Reconcile

func (r *BMCVersionSetReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*BMCVersionSetReconciler) SetupWithManager

func (r *BMCVersionSetReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type DNSRecordTemplateData added in v0.2.0

type DNSRecordTemplateData struct {
	Name      string
	Namespace string
	metalv1alpha1.BMCSpec
	metalv1alpha1.BMCStatus
	Labels map[string]string
}

DNSRecordTemplateData contains the data used to render the DNS record YAML template

type EndpointReconciler

type EndpointReconciler struct {
	client.Client
	Scheme             *runtime.Scheme
	MACPrefixes        *macdb.MacPrefixes
	DefaultProtocol    metalv1alpha1.ProtocolScheme
	SkipCertValidation bool
	BMCOptions         bmc.Options
}

EndpointReconciler reconciles a Endpoints object

func (*EndpointReconciler) Reconcile

func (r *EndpointReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*EndpointReconciler) SetupWithManager

func (r *EndpointReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type MultiErrorTracker added in v0.4.0

type MultiErrorTracker struct {
	Identifier string
	Err        error
}

func (MultiErrorTracker) Error added in v0.4.0

func (e MultiErrorTracker) Error() string

type ServerBootConfigurationReconciler

type ServerBootConfigurationReconciler struct {
	client.Client
	Scheme *runtime.Scheme
}

ServerBootConfigurationReconciler reconciles a ServerBootConfiguration object

func (*ServerBootConfigurationReconciler) Reconcile

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*ServerBootConfigurationReconciler) SetupWithManager

func (r *ServerBootConfigurationReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type ServerClaimReconciler

type ServerClaimReconciler struct {
	client.Client
	APIReader               client.Reader
	Cache                   cache.Cache
	Scheme                  *runtime.Scheme
	MaxConcurrentReconciles int
}

ServerClaimReconciler reconciles a ServerClaim object

func (*ServerClaimReconciler) Reconcile

func (r *ServerClaimReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*ServerClaimReconciler) SetupWithManager

func (r *ServerClaimReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type ServerMaintenanceReconciler

type ServerMaintenanceReconciler struct {
	client.Client
	Scheme *runtime.Scheme
}

ServerMaintenanceReconciler reconciles a ServerMaintenance object

func (*ServerMaintenanceReconciler) Reconcile

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*ServerMaintenanceReconciler) SetupWithManager

func (r *ServerMaintenanceReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type ServerReconciler

type ServerReconciler struct {
	client.Client
	APIReader               client.Reader
	Scheme                  *runtime.Scheme
	DefaultProtocol         metalv1alpha1.ProtocolScheme
	SkipCertValidation      bool
	ManagerNamespace        string
	ProbeImage              string
	ProbeOSImage            string
	RegistryURL             string
	RegistryClientTimeout   time.Duration
	RegistryDataMaxAge      time.Duration
	RegistryResyncInterval  time.Duration
	EnforceFirstBoot        bool
	EnforcePowerOff         bool
	ResyncInterval          time.Duration
	BMCOptions              bmc.Options
	DiscoveryTimeout        time.Duration
	MaxConcurrentReconciles int
	Conditions              *conditionutils.Accessor
	DiscoveryIgnitionPath   string
}

ServerReconciler reconciles a Server object

func (*ServerReconciler) Reconcile

func (r *ServerReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

func (*ServerReconciler) SetupWithManager

func (r *ServerReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

Jump to

Keyboard shortcuts

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