Documentation ¶
Index ¶
- Constants
- func GetNamespacedNameType(name, namespace string) types.NamespacedName
- type AWSIamConfigReconciler
- type CloudStackDatacenterReconciler
- type ClusterReconciler
- type ClusterReconcilerOption
- type ClusterValidator
- type ControlPlaneUpgradeReconciler
- type DockerDatacenterReconciler
- type Factory
- func (f *Factory) Build(ctx context.Context) (*Reconcilers, error)
- func (f *Factory) Close(ctx context.Context) error
- func (f *Factory) WithCloudStackDatacenterReconciler() *Factory
- func (f *Factory) WithClusterReconciler(capiProviders []clusterctlv1.Provider, opts ...ClusterReconcilerOption) *Factory
- func (f *Factory) WithControlPlaneUpgradeReconciler() *Factory
- func (f *Factory) WithDockerDatacenterReconciler() *Factory
- func (f *Factory) WithKubeadmControlPlaneReconciler() *Factory
- func (f *Factory) WithMachineDeploymentReconciler() *Factory
- func (f *Factory) WithMachineDeploymentUpgradeReconciler() *Factory
- func (f *Factory) WithNodeUpgradeReconciler() *Factory
- func (f *Factory) WithNutanixDatacenterReconciler() *Factory
- func (f *Factory) WithProviderClusterReconcilerRegistry(capiProviders []clusterctlv1.Provider) *Factory
- func (f *Factory) WithSnowMachineConfigReconciler() *Factory
- func (f *Factory) WithTinkerbellDatacenterReconciler() *Factory
- func (f *Factory) WithVSphereDatacenterReconciler() *Factory
- type KubeadmControlPlaneReconciler
- type MachineDeploymentReconciler
- type MachineDeploymentUpgradeReconciler
- type MachineHealthCheckReconciler
- type Manager
- type NodeUpgradeReconciler
- type NutanixDatacenterReconciler
- type PackagesClient
- type ProviderClusterReconcilerRegistry
- type Reconcilers
- type RemoteClientRegistry
- type SnowMachineConfigReconciler
- type TinkerbellDatacenterReconciler
- type VSphereDatacenterReconciler
- type Validator
Constants ¶
const (
// ClusterFinalizerName is the finalizer added to clusters to handle deletion.
ClusterFinalizerName = "clusters.anywhere.eks.amazonaws.com/finalizer"
)
Variables ¶
This section is empty.
Functions ¶
func GetNamespacedNameType ¶ added in v0.19.0
func GetNamespacedNameType(name, namespace string) types.NamespacedName
GetNamespacedNameType takes name and namespace and returns NamespacedName in namespace/name format.
Types ¶
type AWSIamConfigReconciler ¶ added in v0.13.0
type AWSIamConfigReconciler interface { EnsureCASecret(ctx context.Context, logger logr.Logger, cluster *anywherev1.Cluster) (controller.Result, error) Reconcile(ctx context.Context, logger logr.Logger, cluster *anywherev1.Cluster) (controller.Result, error) ReconcileDelete(ctx context.Context, logger logr.Logger, cluster *anywherev1.Cluster) error }
AWSIamConfigReconciler manages aws-iam-authenticator installation and configuration for an eks-a cluster.
type CloudStackDatacenterReconciler ¶ added in v0.15.0
type CloudStackDatacenterReconciler struct {
// contains filtered or unexported fields
}
CloudStackDatacenterReconciler reconciles a CloudStackDatacenterConfig object.
func NewCloudStackDatacenterReconciler ¶ added in v0.15.0
func NewCloudStackDatacenterReconciler(client client.Client, validatorRegistry cloudstack.ValidatorRegistry) *CloudStackDatacenterReconciler
NewCloudStackDatacenterReconciler creates a new instance of the CloudStackDatacenterReconciler struct.
func (*CloudStackDatacenterReconciler) Reconcile ¶ added in v0.15.0
func (r *CloudStackDatacenterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (_ ctrl.Result, reterr error)
Reconcile implements the reconcile.Reconciler interface.
func (*CloudStackDatacenterReconciler) SetupWithManager ¶ added in v0.15.0
func (r *CloudStackDatacenterReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type ClusterReconciler ¶
type ClusterReconciler struct {
// contains filtered or unexported fields
}
ClusterReconciler reconciles a Cluster object.
func NewClusterReconciler ¶
func NewClusterReconciler(client client.Client, registry ProviderClusterReconcilerRegistry, awsIamAuth AWSIamConfigReconciler, clusterValidator ClusterValidator, pkgs PackagesClient, machineHealthCheck MachineHealthCheckReconciler, opts ...ClusterReconcilerOption) *ClusterReconciler
NewClusterReconciler constructs a new ClusterReconciler.
func (*ClusterReconciler) Reconcile ¶
func (r *ClusterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a cluster object. nolint:gocyclo TODO: Reduce high cycomatic complexity. https://github.com/aws/eks-anywhere-internal/issues/1449
func (*ClusterReconciler) SetupWithManager ¶
SetupWithManager sets up the controller with the Manager.
type ClusterReconcilerOption ¶ added in v0.16.0
type ClusterReconcilerOption func(*ClusterReconciler)
ClusterReconcilerOption allows to configure the ClusterReconciler.
type ClusterValidator ¶ added in v0.15.0
type ClusterValidator interface {
ValidateManagementClusterName(ctx context.Context, log logr.Logger, cluster *anywherev1.Cluster) error
}
ClusterValidator runs cluster level preflight validations before it goes to provider reconciler.
type ControlPlaneUpgradeReconciler ¶ added in v0.19.0
type ControlPlaneUpgradeReconciler struct {
// contains filtered or unexported fields
}
ControlPlaneUpgradeReconciler reconciles a ControlPlaneUpgradeReconciler object.
func NewControlPlaneUpgradeReconciler ¶ added in v0.19.0
func NewControlPlaneUpgradeReconciler(client client.Client, remoteClientRegistry RemoteClientRegistry) *ControlPlaneUpgradeReconciler
NewControlPlaneUpgradeReconciler returns a new instance of ControlPlaneUpgradeReconciler.
func (*ControlPlaneUpgradeReconciler) Reconcile ¶ added in v0.19.0
func (r *ControlPlaneUpgradeReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a ControlPlaneUpgrade object. nolint:gocyclo
func (*ControlPlaneUpgradeReconciler) SetupWithManager ¶ added in v0.19.0
func (r *ControlPlaneUpgradeReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type DockerDatacenterReconciler ¶ added in v0.13.0
type DockerDatacenterReconciler struct {
// contains filtered or unexported fields
}
DockerDatacenterReconciler reconciles a DockerDatacenterConfig object.
func NewDockerDatacenterReconciler ¶ added in v0.13.0
func NewDockerDatacenterReconciler(client client.Client) *DockerDatacenterReconciler
NewDockerDatacenterReconciler creates a new instance of the DockerDatacenterReconciler struct.
type Factory ¶
type Factory struct {
// contains filtered or unexported fields
}
func (*Factory) Close ¶ added in v0.15.0
Close cleans up any open resources from the created dependencies.
func (*Factory) WithCloudStackDatacenterReconciler ¶ added in v0.15.0
WithCloudStackDatacenterReconciler adds the CloudStackDatacenterReconciler to the controller factory.
func (*Factory) WithClusterReconciler ¶
func (f *Factory) WithClusterReconciler(capiProviders []clusterctlv1.Provider, opts ...ClusterReconcilerOption) *Factory
WithClusterReconciler builds the cluster reconciler.
func (*Factory) WithControlPlaneUpgradeReconciler ¶ added in v0.19.0
WithControlPlaneUpgradeReconciler builds the ControlPlaneUpgrade reconciler.
func (*Factory) WithDockerDatacenterReconciler ¶ added in v0.13.0
WithDockerDatacenterReconciler adds the DockerDatacenterReconciler to the controller factory.
func (*Factory) WithKubeadmControlPlaneReconciler ¶ added in v0.19.0
WithKubeadmControlPlaneReconciler builds the KubeadmControlPlane reconciler.
func (*Factory) WithMachineDeploymentReconciler ¶ added in v0.19.0
WithMachineDeploymentReconciler builds the MachineDeployment reconciler.
func (*Factory) WithMachineDeploymentUpgradeReconciler ¶ added in v0.19.0
WithMachineDeploymentUpgradeReconciler builds the WithMachineDeploymentUpgrade reconciler.
func (*Factory) WithNodeUpgradeReconciler ¶ added in v0.19.0
WithNodeUpgradeReconciler builds the WithNodeUpgrade reconciler.
func (*Factory) WithNutanixDatacenterReconciler ¶ added in v0.15.0
WithNutanixDatacenterReconciler adds the NutanixDatacenterReconciler to the controller factory.
func (*Factory) WithProviderClusterReconcilerRegistry ¶
func (f *Factory) WithProviderClusterReconcilerRegistry(capiProviders []clusterctlv1.Provider) *Factory
func (*Factory) WithSnowMachineConfigReconciler ¶
func (*Factory) WithTinkerbellDatacenterReconciler ¶ added in v0.14.0
WithTinkerbellDatacenterReconciler adds the TinkerbellDatacenterReconciler to the controller factory.
func (*Factory) WithVSphereDatacenterReconciler ¶
type KubeadmControlPlaneReconciler ¶ added in v0.19.0
type KubeadmControlPlaneReconciler struct {
// contains filtered or unexported fields
}
KubeadmControlPlaneReconciler reconciles a KubeadmControlPlaneReconciler object.
func NewKubeadmControlPlaneReconciler ¶ added in v0.19.0
func NewKubeadmControlPlaneReconciler(client client.Client, uncachedClient client.Reader) *KubeadmControlPlaneReconciler
NewKubeadmControlPlaneReconciler returns a new instance of KubeadmControlPlaneReconciler.
func (*KubeadmControlPlaneReconciler) Reconcile ¶ added in v0.19.0
func (r *KubeadmControlPlaneReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a KubeadmControlPlane object for in place upgrades.
func (*KubeadmControlPlaneReconciler) SetupWithManager ¶ added in v0.19.0
func (r *KubeadmControlPlaneReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type MachineDeploymentReconciler ¶ added in v0.19.0
type MachineDeploymentReconciler struct {
// contains filtered or unexported fields
}
MachineDeploymentReconciler reconciles a MachineDeploymentReconciler object.
func NewMachineDeploymentReconciler ¶ added in v0.19.0
func NewMachineDeploymentReconciler(client client.Client, uncachedClient client.Reader) *MachineDeploymentReconciler
NewMachineDeploymentReconciler returns a new instance of MachineDeploymentReconciler.
func (*MachineDeploymentReconciler) Reconcile ¶ added in v0.19.0
func (r *MachineDeploymentReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a MachineDeployment object for in place upgrades.
func (*MachineDeploymentReconciler) SetupWithManager ¶ added in v0.19.0
func (r *MachineDeploymentReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type MachineDeploymentUpgradeReconciler ¶ added in v0.19.0
type MachineDeploymentUpgradeReconciler struct {
// contains filtered or unexported fields
}
MachineDeploymentUpgradeReconciler reconciles a MachineDeploymentUpgrade object.
func NewMachineDeploymentUpgradeReconciler ¶ added in v0.19.0
func NewMachineDeploymentUpgradeReconciler(client client.Client) *MachineDeploymentUpgradeReconciler
NewMachineDeploymentUpgradeReconciler returns a new instance of MachineDeploymentUpgradeReconciler.
func (*MachineDeploymentUpgradeReconciler) Reconcile ¶ added in v0.19.0
func (r *MachineDeploymentUpgradeReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a MachineDeploymentUpgrade object. nolint:gocyclo TODO: Reduce high cyclomatic complexity: https://github.com/aws/eks-anywhere-internal/issues/2119
func (*MachineDeploymentUpgradeReconciler) SetupWithManager ¶ added in v0.19.0
func (r *MachineDeploymentUpgradeReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type MachineHealthCheckReconciler ¶ added in v0.17.0
type MachineHealthCheckReconciler interface {
Reconcile(ctx context.Context, logger logr.Logger, cluster *anywherev1.Cluster) error
}
MachineHealthCheckReconciler manages machine health checks for an eks-a cluster.
type NodeUpgradeReconciler ¶ added in v0.19.0
type NodeUpgradeReconciler struct {
// contains filtered or unexported fields
}
NodeUpgradeReconciler reconciles a NodeUpgrade object.
func NewNodeUpgradeReconciler ¶ added in v0.19.0
func NewNodeUpgradeReconciler(client client.Client, remoteClientRegistry RemoteClientRegistry) *NodeUpgradeReconciler
NewNodeUpgradeReconciler returns a new instance of NodeUpgradeReconciler.
func (*NodeUpgradeReconciler) Reconcile ¶ added in v0.19.0
func (r *NodeUpgradeReconciler) Reconcile(ctx context.Context, req ctrl.Request) (result ctrl.Result, reterr error)
Reconcile reconciles a NodeUpgrade object. nolint:gocyclo
func (*NodeUpgradeReconciler) SetupWithManager ¶ added in v0.19.0
func (r *NodeUpgradeReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type NutanixDatacenterReconciler ¶ added in v0.15.0
type NutanixDatacenterReconciler struct {
// contains filtered or unexported fields
}
NutanixDatacenterReconciler reconciles a NutanixDatacenterConfig object.
func NewNutanixDatacenterReconciler ¶ added in v0.15.0
func NewNutanixDatacenterReconciler(client client.Client, defaulter *nutanix.Defaulter) *NutanixDatacenterReconciler
NewNutanixDatacenterReconciler constructs a new NutanixDatacenterReconciler.
func (*NutanixDatacenterReconciler) Reconcile ¶ added in v0.15.0
func (r *NutanixDatacenterReconciler) Reconcile(ctx context.Context, request ctrl.Request) (ctrl.Result, error)
Reconcile reconciles a NutanixDatacenterConfig object.
func (*NutanixDatacenterReconciler) SetupWithManager ¶ added in v0.15.0
func (r *NutanixDatacenterReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type PackagesClient ¶ added in v0.15.0
type PackagesClient interface { EnableFullLifecycle(ctx context.Context, log logr.Logger, clusterName, kubeConfig string, chart *v1alpha1.Image, registry *registrymirror.RegistryMirror, options ...curatedpackages.PackageControllerClientOpt) error ReconcileDelete(context.Context, logr.Logger, curatedpackages.KubeDeleter, *anywherev1.Cluster) error Reconcile(context.Context, logr.Logger, client.Client, *anywherev1.Cluster) error }
PackagesClient handles curated packages operations from within the cluster controller.
type ProviderClusterReconcilerRegistry ¶
type ProviderClusterReconcilerRegistry interface {
Get(datacenterKind string) clusters.ProviderClusterReconciler
}
type Reconcilers ¶
type Reconcilers struct { ClusterReconciler *ClusterReconciler DockerDatacenterReconciler *DockerDatacenterReconciler VSphereDatacenterReconciler *VSphereDatacenterReconciler SnowMachineConfigReconciler *SnowMachineConfigReconciler TinkerbellDatacenterReconciler *TinkerbellDatacenterReconciler CloudStackDatacenterReconciler *CloudStackDatacenterReconciler NutanixDatacenterReconciler *NutanixDatacenterReconciler KubeadmControlPlaneReconciler *KubeadmControlPlaneReconciler MachineDeploymentReconciler *MachineDeploymentReconciler ControlPlaneUpgradeReconciler *ControlPlaneUpgradeReconciler MachineDeploymentUpgradeReconciler *MachineDeploymentUpgradeReconciler NodeUpgradeReconciler *NodeUpgradeReconciler }
type RemoteClientRegistry ¶ added in v0.19.0
type RemoteClientRegistry interface {
GetClient(ctx context.Context, cluster client.ObjectKey) (client.Client, error)
}
RemoteClientRegistry defines methods for remote cluster controller clients.
type SnowMachineConfigReconciler ¶
type SnowMachineConfigReconciler struct {
// contains filtered or unexported fields
}
SnowMachineConfigReconciler reconciles a SnowMachineConfig object.
func NewSnowMachineConfigReconciler ¶
func NewSnowMachineConfigReconciler(client client.Client, validator Validator) *SnowMachineConfigReconciler
NewSnowMachineConfigReconciler constructs a new SnowMachineConfigReconciler.
func (*SnowMachineConfigReconciler) Reconcile ¶
func (r *SnowMachineConfigReconciler) Reconcile(ctx context.Context, req ctrl.Request) (_ ctrl.Result, reterr error)
TODO: add here kubebuilder permissions as needed. Reconcile implements the reconcile.Reconciler interface.
func (*SnowMachineConfigReconciler) SetupWithManager ¶
func (r *SnowMachineConfigReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type TinkerbellDatacenterReconciler ¶ added in v0.14.0
type TinkerbellDatacenterReconciler struct {
// contains filtered or unexported fields
}
TinkerbellDatacenterReconciler reconciles a TinkerbellDatacenterConfig object.
func NewTinkerbellDatacenterReconciler ¶ added in v0.14.0
func NewTinkerbellDatacenterReconciler(client client.Client) *TinkerbellDatacenterReconciler
NewTinkerbellDatacenterReconciler creates a new instance of the TinkerbellDatacenterReconciler struct.
func (*TinkerbellDatacenterReconciler) Reconcile ¶ added in v0.14.0
func (r *TinkerbellDatacenterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (_ ctrl.Result, reterr error)
Reconcile implements the reconcile.Reconciler interface.
func (*TinkerbellDatacenterReconciler) SetupWithManager ¶ added in v0.14.0
func (r *TinkerbellDatacenterReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type VSphereDatacenterReconciler ¶
type VSphereDatacenterReconciler struct {
// contains filtered or unexported fields
}
VSphereDatacenterReconciler reconciles a VSphereDatacenterConfig object.
func NewVSphereDatacenterReconciler ¶
func NewVSphereDatacenterReconciler(client client.Client, validator *vsphere.Validator, defaulter *vsphere.Defaulter) *VSphereDatacenterReconciler
NewVSphereDatacenterReconciler constructs a new VSphereDatacenterReconciler.
func (*VSphereDatacenterReconciler) Reconcile ¶
func (r *VSphereDatacenterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (_ ctrl.Result, reterr error)
TODO: add here kubebuilder permissions as neeeded. Reconcile implements the reconcile.Reconciler interface.
func (*VSphereDatacenterReconciler) SetupWithManager ¶
func (r *VSphereDatacenterReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type Validator ¶
type Validator interface { ValidateEC2SshKeyNameExists(ctx context.Context, m *anywherev1.SnowMachineConfig) error ValidateEC2ImageExistsOnDevice(ctx context.Context, m *anywherev1.SnowMachineConfig) error }
Source Files ¶
- cloudstack_datacenter_controller.go
- cluster_controller.go
- controlplaneupgrade_controller.go
- docker_datacenter_controller.go
- factory.go
- kubeadmcontrolplane_controller.go
- machinedeployment_controller.go
- machinedeploymentupgrade_controller.go
- nodeupgrade_controller.go
- nutanix_datacenter_controller.go
- snow_machineconfig_controller.go
- tinkerbell_datacenter_controller.go
- vsphere_datacenter_controller.go