machineops

package
v0.1.13 Latest Latest
Warning

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

Go to latest
Published: Jun 5, 2026 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PowerClient

type PowerClient interface {
	PowerState(ctx context.Context) (redfish.PowerState, error)
	Reset(ctx context.Context, resetType redfish.ResetType) error
	DisableBootOverride(ctx context.Context) error
}

PowerClient is the Redfish power operation subset used by MachineOperation reconciliation.

type PowerClientFactory

type PowerClientFactory interface {
	ForMachine(ctx context.Context, machine *v1alpha3.Machine) (PowerClient, error)
}

PowerClientFactory builds a PowerClient for a Machine.

type Reconciler

type Reconciler struct {
	client.Client
	APIReader client.Reader

	Site                  string
	PowerClients          PowerClientFactory
	MaxConcurrentMachines int
	MaxAttempts           int32
	PollInterval          time.Duration
	PowerActionTimeout    time.Duration
	Now                   func() metav1.Time
}

Reconciler reconciles metalman-owned host MachineOperations.

func (*Reconciler) Reconcile

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

func (*Reconciler) SetupWithManager

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

type RedfishPowerClientFactory

type RedfishPowerClientFactory struct {
	Reader client.Reader
	Pool   *redfish.Pool
}

RedfishPowerClientFactory creates PowerClients backed by the shared Redfish pool.

func (*RedfishPowerClientFactory) ForMachine

func (f *RedfishPowerClientFactory) ForMachine(ctx context.Context, machine *v1alpha3.Machine) (PowerClient, error)

Jump to

Keyboard shortcuts

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