Documentation ¶
Overview ¶
Package scope defines cluster and machine scope as well as a repository for the Hivelocity API.
Index ¶
- Variables
- func IsControlPlaneReady(ctx context.Context, c clientcmd.ClientConfig) error
- type ClusterScope
- func (s *ClusterScope) ClientConfig(ctx context.Context) (clientcmd.ClientConfig, error)
- func (s *ClusterScope) ClientConfigWithAPIEndpoint(ctx context.Context, endpoint clusterv1.APIEndpoint) (clientcmd.ClientConfig, error)
- func (s *ClusterScope) Close(ctx context.Context) error
- func (s *ClusterScope) ListMachines(ctx context.Context) ([]*clusterv1.Machine, []*infrav1.HivelocityMachine, error)
- func (s *ClusterScope) Name() string
- func (s *ClusterScope) Namespace() string
- func (s *ClusterScope) PatchObject(ctx context.Context) error
- type ClusterScopeParams
- type MachineScope
- func (m *MachineScope) Close(ctx context.Context) error
- func (m *MachineScope) DeviceTagMachineType() hvtag.DeviceTag
- func (m *MachineScope) GetFailureDomain() (string, error)
- func (m *MachineScope) GetRawBootstrapData(ctx context.Context) ([]byte, error)
- func (m *MachineScope) IsBootstrapDataReady(_ context.Context) bool
- func (m *MachineScope) IsControlPlane() bool
- func (m *MachineScope) Name() string
- func (m *MachineScope) Namespace() string
- func (m *MachineScope) PatchObject(ctx context.Context) error
- func (m *MachineScope) SetError(message string, reason capierrors.MachineStatusError)
- type MachineScopeParams
Constants ¶
This section is empty.
Variables ¶
var ErrBootstrapDataNotReady = errors.New("error retrieving bootstrap data: linked Machine's bootstrap.dataSecretName is nil")
ErrBootstrapDataNotReady return an error if no bootstrap data is ready.
var ErrFailureDomainNotFound = errors.New("error no failure domain available")
ErrFailureDomainNotFound returns an error if no region is found.
var ErrWorkloadControlPlaneNotReady = errors.New("Workload ControlPlane not Ready (or not reachable)")
ErrWorkloadControlPlaneNotReady indicates that the control plane is not ready (or not reachable).
Functions ¶
func IsControlPlaneReady ¶
func IsControlPlaneReady(ctx context.Context, c clientcmd.ClientConfig) error
IsControlPlaneReady returns nil if the control plane is ready.
Types ¶
type ClusterScope ¶
type ClusterScope struct { logr.Logger Client client.Client APIReader client.Reader HVClient hvclient.Client Cluster *clusterv1.Cluster HivelocityCluster *infrav1.HivelocityCluster // contains filtered or unexported fields }
ClusterScope defines the basic context for an actuator to operate upon.
func NewClusterScope ¶
func NewClusterScope(_ context.Context, params ClusterScopeParams) (*ClusterScope, error)
NewClusterScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*ClusterScope) ClientConfig ¶
func (s *ClusterScope) ClientConfig(ctx context.Context) (clientcmd.ClientConfig, error)
ClientConfig return a kusecretbernetes client config for the cluster context.
func (*ClusterScope) ClientConfigWithAPIEndpoint ¶
func (s *ClusterScope) ClientConfigWithAPIEndpoint(ctx context.Context, endpoint clusterv1.APIEndpoint) (clientcmd.ClientConfig, error)
ClientConfigWithAPIEndpoint returns a client config.
func (*ClusterScope) Close ¶
func (s *ClusterScope) Close(ctx context.Context) error
Close closes the current scope persisting the cluster configuration and status.
func (*ClusterScope) ListMachines ¶
func (s *ClusterScope) ListMachines(ctx context.Context) ([]*clusterv1.Machine, []*infrav1.HivelocityMachine, error)
ListMachines returns HivelocityMachines.
func (*ClusterScope) Name ¶
func (s *ClusterScope) Name() string
Name returns the HivelocityCluster name.
func (*ClusterScope) Namespace ¶
func (s *ClusterScope) Namespace() string
Namespace returns the namespace name.
func (*ClusterScope) PatchObject ¶
func (s *ClusterScope) PatchObject(ctx context.Context) error
PatchObject persists the machine spec and status.
type ClusterScopeParams ¶
type ClusterScopeParams struct { Client client.Client APIReader client.Reader Logger logr.Logger HVClient hvclient.Client Cluster *clusterv1.Cluster HivelocityCluster *infrav1.HivelocityCluster }
ClusterScopeParams defines the input parameters used to create a new scope.
type MachineScope ¶
type MachineScope struct { ClusterScope Machine *clusterv1.Machine HivelocityMachine *infrav1.HivelocityMachine }
MachineScope defines the basic context for an actuator to operate upon.
func NewMachineScope ¶
func NewMachineScope(ctx context.Context, params MachineScopeParams) (*MachineScope, error)
NewMachineScope creates a new Scope from the supplied parameters. This is meant to be called for each reconcile iteration.
func (*MachineScope) Close ¶
func (m *MachineScope) Close(ctx context.Context) error
Close closes the current scope persisting the cluster configuration and status.
func (*MachineScope) DeviceTagMachineType ¶
func (m *MachineScope) DeviceTagMachineType() hvtag.DeviceTag
DeviceTagMachineType returns a DeviceTag object for the cluster tag.
func (*MachineScope) GetFailureDomain ¶
func (m *MachineScope) GetFailureDomain() (string, error)
GetFailureDomain returns the machine's failure domain or a default one based on a hash.
func (*MachineScope) GetRawBootstrapData ¶
func (m *MachineScope) GetRawBootstrapData(ctx context.Context) ([]byte, error)
GetRawBootstrapData returns the bootstrap data from the secret in the Machine's bootstrap.dataSecretName.
func (*MachineScope) IsBootstrapDataReady ¶
func (m *MachineScope) IsBootstrapDataReady(_ context.Context) bool
IsBootstrapDataReady checks the readiness of a capi machine's bootstrap data.
func (*MachineScope) IsControlPlane ¶
func (m *MachineScope) IsControlPlane() bool
IsControlPlane returns true if the machine is a control plane.
func (*MachineScope) Name ¶
func (m *MachineScope) Name() string
Name returns the HivelocityMachine name.
func (*MachineScope) Namespace ¶
func (m *MachineScope) Namespace() string
Namespace returns the namespace name.
func (*MachineScope) PatchObject ¶
func (m *MachineScope) PatchObject(ctx context.Context) error
PatchObject persists the machine spec and status.
func (*MachineScope) SetError ¶
func (m *MachineScope) SetError(message string, reason capierrors.MachineStatusError)
SetError sets the ErrorMessage and ErrorReason fields on the machine and logs the message. It assumes the reason is invalid configuration, since that is currently the only relevant MachineStatusError choice.
type MachineScopeParams ¶
type MachineScopeParams struct { ClusterScopeParams Machine *clusterv1.Machine HivelocityMachine *infrav1.HivelocityMachine }
MachineScopeParams defines the input parameters used to create a new Scope.