From 4febefc3a955cf517ec26e7fdbf3425233b8a3a3 Mon Sep 17 00:00:00 2001 From: Dimitri Koshkin Date: Wed, 3 Apr 2024 10:47:22 -0700 Subject: [PATCH] refactor: reduce stutter in addon handlers --- .../generic/lifecycle/ccm/aws/handler.go | 26 ++++++++--------- pkg/handlers/generic/lifecycle/ccm/handler.go | 22 +++++++-------- .../generic/lifecycle/csi/aws-ebs/handler.go | 20 ++++++------- pkg/handlers/generic/lifecycle/csi/handler.go | 20 ++++++------- .../lifecycle/csi/nutanix-csi/handler.go | 20 ++++++------- pkg/handlers/generic/lifecycle/handlers.go | 28 +++++++++---------- 6 files changed, 68 insertions(+), 68 deletions(-) diff --git a/pkg/handlers/generic/lifecycle/ccm/aws/handler.go b/pkg/handlers/generic/lifecycle/ccm/aws/handler.go index c9f34ebfc..1eb2fdb5b 100644 --- a/pkg/handlers/generic/lifecycle/ccm/aws/handler.go +++ b/pkg/handlers/generic/lifecycle/ccm/aws/handler.go @@ -20,13 +20,13 @@ import ( "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/options" ) -type AWSCCMConfig struct { +type Config struct { *options.GlobalOptions kubernetesMinorVersionToCCMConfigMapNames map[string]string } -func (a *AWSCCMConfig) AddFlags(prefix string, flags *pflag.FlagSet) { +func (a *Config) AddFlags(prefix string, flags *pflag.FlagSet) { flags.StringToStringVar( &a.kubernetesMinorVersionToCCMConfigMapNames, prefix+".default-aws-ccm-configmap-names", @@ -38,22 +38,22 @@ func (a *AWSCCMConfig) AddFlags(prefix string, flags *pflag.FlagSet) { ) } -type AWSCCM struct { +type provider struct { client ctrlclient.Client - config *AWSCCMConfig + config *Config } func New( c ctrlclient.Client, - cfg *AWSCCMConfig, -) *AWSCCM { - return &AWSCCM{ + cfg *Config, +) *provider { + return &provider{ client: c, config: cfg, } } -func (a *AWSCCM) Apply( +func (p *provider) Apply( ctx context.Context, cluster *clusterv1.Cluster, ) error { @@ -67,17 +67,17 @@ func (a *AWSCCM) Apply( return fmt.Errorf("failed to parse version from cluster %w", err) } minorVersion := fmt.Sprintf("%d.%d", version.Major, version.Minor) - configMapForMinorVersion := a.config.kubernetesMinorVersionToCCMConfigMapNames[minorVersion] + configMapForMinorVersion := p.config.kubernetesMinorVersionToCCMConfigMapNames[minorVersion] ccmConfigMapForMinorVersion := &corev1.ConfigMap{ ObjectMeta: metav1.ObjectMeta{ - Namespace: a.config.DefaultsNamespace(), + Namespace: p.config.DefaultsNamespace(), Name: configMapForMinorVersion, }, } objName := ctrlclient.ObjectKeyFromObject( ccmConfigMapForMinorVersion, ) - err = a.client.Get(ctx, objName, ccmConfigMapForMinorVersion) + err = p.client.Get(ctx, objName, ccmConfigMapForMinorVersion) if err != nil { log.Error(err, "failed to fetch CCM template for cluster") return fmt.Errorf( @@ -88,7 +88,7 @@ func (a *AWSCCM) Apply( } ccmConfigMap := generateCCMConfigMapForCluster(ccmConfigMapForMinorVersion, cluster) - if err = client.ServerSideApply(ctx, a.client, ccmConfigMap); err != nil { + if err = client.ServerSideApply(ctx, p.client, ccmConfigMap); err != nil { log.Error(err, "failed to apply CCM configmap for cluster") return fmt.Errorf( "failed to apply AWS CCM manifests ConfigMap: %w", @@ -96,7 +96,7 @@ func (a *AWSCCM) Apply( ) } - err = lifecycleutils.EnsureCRSForClusterFromObjects(ctx, ccmConfigMap.Name, a.client, cluster, ccmConfigMap) + err = lifecycleutils.EnsureCRSForClusterFromObjects(ctx, ccmConfigMap.Name, p.client, cluster, ccmConfigMap) if err != nil { return fmt.Errorf("failed to generate CCM CRS for cluster: %w", err) } diff --git a/pkg/handlers/generic/lifecycle/ccm/handler.go b/pkg/handlers/generic/lifecycle/ccm/handler.go index 08d8372f0..f57a45bf3 100644 --- a/pkg/handlers/generic/lifecycle/ccm/handler.go +++ b/pkg/handlers/generic/lifecycle/ccm/handler.go @@ -24,27 +24,27 @@ const ( variableRootName = "ccm" ) -type CCMProvider interface { +type Provider interface { Apply(context.Context, *clusterv1.Cluster) error } -type CCMHandler struct { +type ccmHandler struct { client ctrlclient.Client variableName string variablePath []string - ProviderHandler map[string]CCMProvider + ProviderHandler map[string]Provider } var ( - _ commonhandlers.Named = &CCMHandler{} - _ lifecycle.AfterControlPlaneInitialized = &CCMHandler{} + _ commonhandlers.Named = &ccmHandler{} + _ lifecycle.AfterControlPlaneInitialized = &ccmHandler{} ) func New( c ctrlclient.Client, - handlers map[string]CCMProvider, -) *CCMHandler { - return &CCMHandler{ + handlers map[string]Provider, +) *ccmHandler { + return &ccmHandler{ client: c, variableName: clusterconfig.MetaVariableName, variablePath: []string{"addons", variableRootName}, @@ -52,11 +52,11 @@ func New( } } -func (c *CCMHandler) Name() string { +func (c *ccmHandler) Name() string { return "CCMHandler" } -func (c *CCMHandler) AfterControlPlaneInitialized( +func (c *ccmHandler) AfterControlPlaneInitialized( ctx context.Context, req *runtimehooksv1.AfterControlPlaneInitializedRequest, resp *runtimehooksv1.AfterControlPlaneInitializedResponse, @@ -90,7 +90,7 @@ func (c *CCMHandler) AfterControlPlaneInitialized( } infraKind := req.Cluster.Spec.InfrastructureRef.Kind log.Info(fmt.Sprintf("finding CCM handler for %s", infraKind)) - var handler CCMProvider + var handler Provider switch { case strings.Contains(strings.ToLower(infraKind), v1alpha1.CCMProviderAWS): handler = c.ProviderHandler[v1alpha1.CCMProviderAWS] diff --git a/pkg/handlers/generic/lifecycle/csi/aws-ebs/handler.go b/pkg/handlers/generic/lifecycle/csi/aws-ebs/handler.go index 90072b3a2..f39f91e79 100644 --- a/pkg/handlers/generic/lifecycle/csi/aws-ebs/handler.go +++ b/pkg/handlers/generic/lifecycle/csi/aws-ebs/handler.go @@ -21,12 +21,12 @@ import ( "github.com/d2iq-labs/cluster-api-runtime-extensions-nutanix/pkg/handlers/options" ) -type AWSEBSConfig struct { +type Config struct { *options.GlobalOptions defaultAWSEBSConfigMapName string } -func (a *AWSEBSConfig) AddFlags(prefix string, flags *pflag.FlagSet) { +func (a *Config) AddFlags(prefix string, flags *pflag.FlagSet) { flags.StringVar( &a.defaultAWSEBSConfigMapName, prefix+".aws-ebs-provider-configmap-name", @@ -35,22 +35,22 @@ func (a *AWSEBSConfig) AddFlags(prefix string, flags *pflag.FlagSet) { ) } -type AWSEBS struct { +type CSI struct { client ctrlclient.Client - config *AWSEBSConfig + config *Config } func New( c ctrlclient.Client, - cfg *AWSEBSConfig, -) *AWSEBS { - return &AWSEBS{ + cfg *Config, +) *CSI { + return &CSI{ client: c, config: cfg, } } -func (a *AWSEBS) Apply( +func (a *CSI) Apply( ctx context.Context, provider v1alpha1.CSIProvider, defaultStorageConfig *v1alpha1.DefaultStorage, @@ -75,7 +75,7 @@ func (a *AWSEBS) Apply( ) } -func (a *AWSEBS) createStorageClasses(ctx context.Context, +func (a *CSI) createStorageClasses(ctx context.Context, configs []v1alpha1.StorageClassConfig, cluster *clusterv1.Cluster, defaultStorageConfig *v1alpha1.DefaultStorage, @@ -112,7 +112,7 @@ func (a *AWSEBS) createStorageClasses(ctx context.Context, ) } -func (a *AWSEBS) handleCRSApply(ctx context.Context, +func (a *CSI) handleCRSApply(ctx context.Context, req *runtimehooksv1.AfterControlPlaneInitializedRequest, ) error { awsEBSCSIConfigMap := &corev1.ConfigMap{ diff --git a/pkg/handlers/generic/lifecycle/csi/handler.go b/pkg/handlers/generic/lifecycle/csi/handler.go index fd07767c6..a8cd39424 100644 --- a/pkg/handlers/generic/lifecycle/csi/handler.go +++ b/pkg/handlers/generic/lifecycle/csi/handler.go @@ -22,7 +22,7 @@ const ( variableRootName = "csi" ) -type CSIProvider interface { +type Provider interface { Apply( context.Context, v1alpha1.CSIProvider, @@ -31,23 +31,23 @@ type CSIProvider interface { ) error } -type CSIHandler struct { +type Handler struct { client ctrlclient.Client variableName string variablePath []string - ProviderHandler map[string]CSIProvider + ProviderHandler map[string]Provider } var ( - _ commonhandlers.Named = &CSIHandler{} - _ lifecycle.AfterControlPlaneInitialized = &CSIHandler{} + _ commonhandlers.Named = &Handler{} + _ lifecycle.AfterControlPlaneInitialized = &Handler{} ) func New( c ctrlclient.Client, - handlers map[string]CSIProvider, -) *CSIHandler { - return &CSIHandler{ + handlers map[string]Provider, +) *Handler { + return &Handler{ client: c, variableName: clusterconfig.MetaVariableName, variablePath: []string{"addons", variableRootName}, @@ -55,11 +55,11 @@ func New( } } -func (c *CSIHandler) Name() string { +func (c *Handler) Name() string { return "CSIHandler" } -func (c *CSIHandler) AfterControlPlaneInitialized( +func (c *Handler) AfterControlPlaneInitialized( ctx context.Context, req *runtimehooksv1.AfterControlPlaneInitializedRequest, resp *runtimehooksv1.AfterControlPlaneInitializedResponse, diff --git a/pkg/handlers/generic/lifecycle/csi/nutanix-csi/handler.go b/pkg/handlers/generic/lifecycle/csi/nutanix-csi/handler.go index 142189b47..cd23ea7a7 100644 --- a/pkg/handlers/generic/lifecycle/csi/nutanix-csi/handler.go +++ b/pkg/handlers/generic/lifecycle/csi/nutanix-csi/handler.go @@ -34,12 +34,12 @@ const ( defaultSnapshotHelmReleaseNameTemplate = "nutanix-csi-snapshot-%s" ) -type NutanixCSIConfig struct { +type Config struct { *options.GlobalOptions defaultValuesTemplateConfigMapName string } -func (n *NutanixCSIConfig) AddFlags(prefix string, flags *pflag.FlagSet) { +func (n *Config) AddFlags(prefix string, flags *pflag.FlagSet) { flags.StringVar( &n.defaultValuesTemplateConfigMapName, prefix+".default-values-template-configmap-name", @@ -48,22 +48,22 @@ func (n *NutanixCSIConfig) AddFlags(prefix string, flags *pflag.FlagSet) { ) } -type NutanixCSI struct { +type CSI struct { client ctrlclient.Client - config *NutanixCSIConfig + config *Config } func New( c ctrlclient.Client, - cfg *NutanixCSIConfig, -) *NutanixCSI { - return &NutanixCSI{ + cfg *Config, +) *CSI { + return &CSI{ client: c, config: cfg, } } -func (n *NutanixCSI) Apply( +func (n *CSI) Apply( ctx context.Context, provider v1alpha1.CSIProvider, defaultStorageConfig *v1alpha1.DefaultStorage, @@ -118,7 +118,7 @@ func (n *NutanixCSI) Apply( ) } -func (n *NutanixCSI) handleHelmAddonApply( +func (n *CSI) handleHelmAddonApply( ctx context.Context, req *runtimehooksv1.AfterControlPlaneInitializedRequest, ) error { @@ -205,7 +205,7 @@ func (n *NutanixCSI) handleHelmAddonApply( return nil } -func (n *NutanixCSI) createStorageClasses(ctx context.Context, +func (n *CSI) createStorageClasses(ctx context.Context, configs []v1alpha1.StorageClassConfig, cluster *clusterv1.Cluster, defaultStorageConfig *v1alpha1.DefaultStorage, diff --git a/pkg/handlers/generic/lifecycle/handlers.go b/pkg/handlers/generic/lifecycle/handlers.go index b3b0d22fb..76a2fcff5 100644 --- a/pkg/handlers/generic/lifecycle/handlers.go +++ b/pkg/handlers/generic/lifecycle/handlers.go @@ -27,9 +27,9 @@ type Handlers struct { ciliumCNIConfig *cilium.CNIConfig nfdConfig *nfd.Config clusterAutoscalerConfig *clusterautoscaler.Config - ebsConfig *awsebs.AWSEBSConfig - nutnaixCSIConfig *nutanixcsi.NutanixCSIConfig - awsccmConfig *awsccm.AWSCCMConfig + ebsCSIConfig *awsebs.Config + nutanixCSIConfig *nutanixcsi.Config + awsCCMConfig *awsccm.Config } func New(globalOptions *options.GlobalOptions) *Handlers { @@ -38,19 +38,19 @@ func New(globalOptions *options.GlobalOptions) *Handlers { ciliumCNIConfig: &cilium.CNIConfig{GlobalOptions: globalOptions}, nfdConfig: &nfd.Config{GlobalOptions: globalOptions}, clusterAutoscalerConfig: &clusterautoscaler.Config{GlobalOptions: globalOptions}, - ebsConfig: &awsebs.AWSEBSConfig{GlobalOptions: globalOptions}, - awsccmConfig: &awsccm.AWSCCMConfig{GlobalOptions: globalOptions}, - nutnaixCSIConfig: &nutanixcsi.NutanixCSIConfig{GlobalOptions: globalOptions}, + ebsCSIConfig: &awsebs.Config{GlobalOptions: globalOptions}, + awsCCMConfig: &awsccm.Config{GlobalOptions: globalOptions}, + nutanixCSIConfig: &nutanixcsi.Config{GlobalOptions: globalOptions}, } } func (h *Handlers) AllHandlers(mgr manager.Manager) []handlers.Named { - csiHandlers := map[string]csi.CSIProvider{ - v1alpha1.CSIProviderAWSEBS: awsebs.New(mgr.GetClient(), h.ebsConfig), - v1alpha1.CSIProviderNutanix: nutanixcsi.New(mgr.GetClient(), h.nutnaixCSIConfig), + csiHandlers := map[string]csi.Provider{ + v1alpha1.CSIProviderAWSEBS: awsebs.New(mgr.GetClient(), h.ebsCSIConfig), + v1alpha1.CSIProviderNutanix: nutanixcsi.New(mgr.GetClient(), h.nutanixCSIConfig), } - ccmHandlers := map[string]ccm.CCMProvider{ - v1alpha1.CCMProviderAWS: awsccm.New(mgr.GetClient(), h.awsccmConfig), + ccmHandlers := map[string]ccm.Provider{ + v1alpha1.CCMProviderAWS: awsccm.New(mgr.GetClient(), h.awsCCMConfig), } return []handlers.Named{ @@ -69,7 +69,7 @@ func (h *Handlers) AddFlags(flagSet *pflag.FlagSet) { h.clusterAutoscalerConfig.AddFlags("cluster-autoscaler", flagSet) h.calicoCNIConfig.AddFlags("cni.calico", flagSet) h.ciliumCNIConfig.AddFlags("cni.cilium", flagSet) - h.ebsConfig.AddFlags("awsebs", pflag.CommandLine) - h.awsccmConfig.AddFlags("awsccm", pflag.CommandLine) - h.nutnaixCSIConfig.AddFlags("nutanixcsi", flagSet) + h.ebsCSIConfig.AddFlags("awsebs", pflag.CommandLine) + h.awsCCMConfig.AddFlags("awsccm", pflag.CommandLine) + h.nutanixCSIConfig.AddFlags("nutanixcsi", flagSet) }