From 37c8fa98441518744f34b607ee724e19909c81ef Mon Sep 17 00:00:00 2001 From: Alexandre Dutra Date: Fri, 12 Nov 2021 15:26:27 +0100 Subject: [PATCH] Fix minor things --- controllers/reaper/reaper_controller.go | 4 ++-- controllers/reaper/reaper_controller_test.go | 2 +- pkg/reaper/deployment.go | 7 +++---- pkg/reaper/deployment_test.go | 17 +++++++++++++---- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/controllers/reaper/reaper_controller.go b/controllers/reaper/reaper_controller.go index 230762dc4..9c0c3b8d0 100644 --- a/controllers/reaper/reaper_controller.go +++ b/controllers/reaper/reaper_controller.go @@ -98,10 +98,10 @@ func (r *ReaperReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctr reconciler := reaper.NewReconciler(r.Client, r.ReconcilerConfig) reaperReq := reaper.Request{Reaper: actualReaper, Datacenter: actualDc, Logger: logger} - if result, err := reconciler.ReconcileDeployment(ctx, reaperReq); !result.IsZero() || err != nil { + if result, err := reconciler.ReconcileService(ctx, reaperReq); !result.IsZero() || err != nil { return result, err } - if result, err := reconciler.ReconcileService(ctx, reaperReq); !result.IsZero() || err != nil { + if result, err := reconciler.ReconcileDeployment(ctx, reaperReq); !result.IsZero() || err != nil { return result, err } diff --git a/controllers/reaper/reaper_controller_test.go b/controllers/reaper/reaper_controller_test.go index d619f3276..c9204d261 100644 --- a/controllers/reaper/reaper_controller_test.go +++ b/controllers/reaper/reaper_controller_test.go @@ -24,7 +24,7 @@ const ( ReaperName = "test-reaper" CassandraDatacenterName = "test-dc" - timeout = time.Second * 1000000 + timeout = time.Second * 10 interval = time.Millisecond * 250 ) diff --git a/pkg/reaper/deployment.go b/pkg/reaper/deployment.go index a65e05233..5277793c3 100644 --- a/pkg/reaper/deployment.go +++ b/pkg/reaper/deployment.go @@ -4,7 +4,6 @@ import ( "context" "fmt" "github.com/go-logr/logr" - cassdcapi "github.com/k8ssandra/cass-operator/apis/cassandra/v1beta1" k8ssandraapi "github.com/k8ssandra/k8ssandra-operator/apis/k8ssandra/v1alpha1" api "github.com/k8ssandra/k8ssandra-operator/apis/reaper/v1alpha1" "github.com/k8ssandra/k8ssandra-operator/pkg/utils" @@ -106,7 +105,7 @@ func (r *reconciler) ReconcileDeployment(ctx context.Context, req Request) (ctrl func (r *reconciler) buildDesiredDeployment(req Request) (*appsv1.Deployment, error) { reaper := req.Reaper - deployment := newDeployment(reaper, req.Datacenter) + deployment := newDeployment(reaper, req.Datacenter.GetDatacenterServiceName()) if err := r.handleCqlAuth(reaper, deployment, req.Logger); err != nil { return nil, err } @@ -160,7 +159,7 @@ func addAuthEnvVars(deployment *appsv1.Deployment, vars ...*corev1.EnvVar) { deployment.Spec.Template.Spec.Containers[0].Env = envVars } -func newDeployment(reaper *api.Reaper, dc *cassdcapi.CassandraDatacenter) *appsv1.Deployment { +func newDeployment(reaper *api.Reaper, cassDcService string) *appsv1.Deployment { labels := createServiceAndDeploymentLabels(reaper) selector := metav1.LabelSelector{ @@ -200,7 +199,7 @@ func newDeployment(reaper *api.Reaper, dc *cassdcapi.CassandraDatacenter) *appsv }, { Name: "REAPER_CASS_CONTACT_POINTS", - Value: fmt.Sprintf("[%s]", dc.GetDatacenterServiceName()), + Value: fmt.Sprintf("[%s]", cassDcService), }, { Name: "REAPER_AUTH_ENABLED", diff --git a/pkg/reaper/deployment_test.go b/pkg/reaper/deployment_test.go index 6619db834..570572f23 100644 --- a/pkg/reaper/deployment_test.go +++ b/pkg/reaper/deployment_test.go @@ -17,8 +17,9 @@ func TestNewDeployment(t *testing.T) { reaper := newTestReaper() reaper.Spec.Image = image reaper.Spec.ImagePullPolicy = "Always" - reaper.Spec.AutoScheduling = &api.AutoScheduler{Enabled: true} + reaper.Spec.AutoScheduling = api.AutoScheduler{Enabled: true} reaper.Spec.ServiceAccountName = "reaper" + reaper.Spec.DatacenterAvailability = DatacenterAvailabilityLocal labels := createServiceAndDeploymentLabels(reaper) deployment := newDeployment(reaper, "target-datacenter-service") @@ -69,6 +70,10 @@ func TestNewDeployment(t *testing.T) { Name: "REAPER_AUTH_ENABLED", Value: "false", }, + { + Name: "REAPER_DATACENTER_AVAILABILITY", + Value: DatacenterAvailabilityLocal, + }, { Name: "REAPER_AUTO_SCHEDULING_ENABLED", Value: "true", @@ -97,6 +102,10 @@ func TestNewDeployment(t *testing.T) { Name: "REAPER_AUTH_ENABLED", Value: "false", }, + { + Name: "REAPER_DATACENTER_AVAILABILITY", + Value: DatacenterAvailabilityLocal, + }, { Name: "REAPER_AUTO_SCHEDULING_ENABLED", Value: "true", @@ -105,7 +114,7 @@ func TestNewDeployment(t *testing.T) { assert.ElementsMatch(initContainer.Args, []string{"schema-migration"}) - reaper.Spec.AutoScheduling = &api.AutoScheduler{ + reaper.Spec.AutoScheduling = api.AutoScheduler{ Enabled: false, InitialDelay: "PT10S", PeriodBetweenPolls: "PT5M", @@ -118,13 +127,13 @@ func TestNewDeployment(t *testing.T) { deployment = newDeployment(reaper, "target-datacenter-service") podSpec = deployment.Spec.Template.Spec container = podSpec.Containers[0] - assert.Equal(4, len(container.Env)) + assert.Equal(5, len(container.Env)) reaper.Spec.AutoScheduling.Enabled = true deployment = newDeployment(reaper, "target-datacenter-service") podSpec = deployment.Spec.Template.Spec container = podSpec.Containers[0] - assert.Equal(11, len(container.Env)) + assert.Equal(12, len(container.Env)) assert.Contains(container.Env, corev1.EnvVar{ Name: "REAPER_AUTO_SCHEDULING_PERIOD_BETWEEN_POLLS",