From 8b765554379434ba6f5ee6f416301e35fcab2407 Mon Sep 17 00:00:00 2001 From: Ruben Vargas Palma Date: Tue, 8 Dec 2020 11:10:32 -0600 Subject: [PATCH] Copy common spec to avoid touching persisted CR spec Signed-off-by: Ruben Vargas Palma --- pkg/inject/sidecar.go | 8 ++++---- pkg/inject/sidecar_test.go | 7 +++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pkg/inject/sidecar.go b/pkg/inject/sidecar.go index 0bc1236c4..6d2ffda29 100644 --- a/pkg/inject/sidecar.go +++ b/pkg/inject/sidecar.go @@ -217,18 +217,18 @@ func container(jaeger *v1.Jaeger, dep *appsv1.Deployment, agentIdx int) corev1.C // Use only the agent common spec for volumes and mounts. // We don't want to mount all Jaeger internal volumes into user's deployments - volumesAndMountsSpec := &jaeger.Spec.Agent.JaegerCommonSpec + volumesAndMountsSpec := jaeger.Spec.Agent.JaegerCommonSpec otelConf, err := jaeger.Spec.Agent.Config.GetMap() if err != nil { jaeger.Logger().WithField("error", err). WithField("component", "agent"). Errorf("Could not parse OTEL config, config map will not be created") } else { - otelconfig.Sync(jaeger, "agent", jaeger.Spec.Agent.Options, otelConf, volumesAndMountsSpec, &args) + otelconfig.Sync(jaeger, "agent", jaeger.Spec.Agent.Options, otelConf, &volumesAndMountsSpec, &args) } - ca.Update(jaeger, volumesAndMountsSpec) - ca.AddServiceCA(jaeger, volumesAndMountsSpec) + ca.Update(jaeger, &volumesAndMountsSpec) + ca.AddServiceCA(jaeger, &volumesAndMountsSpec) // ensure we have a consistent order of the arguments // see https://github.com/jaegertracing/jaeger-operator/issues/334 diff --git a/pkg/inject/sidecar_test.go b/pkg/inject/sidecar_test.go index b71e47567..7739d1f99 100644 --- a/pkg/inject/sidecar_test.go +++ b/pkg/inject/sidecar_test.go @@ -49,6 +49,9 @@ func TestInjectSidecarOpenShift(t *testing.T) { defer reset() jaeger := v1.NewJaeger(types.NamespacedName{Name: "my-instance"}) + assert.Len(t, jaeger.Spec.Agent.VolumeMounts, 0) + assert.Len(t, jaeger.Spec.Agent.Volumes, 0) + dep := dep(map[string]string{}, map[string]string{}) dep = Sidecar(jaeger, dep) assert.Equal(t, dep.Labels[Label], jaeger.Name) @@ -57,6 +60,10 @@ func TestInjectSidecarOpenShift(t *testing.T) { assert.Len(t, dep.Spec.Template.Spec.Containers[0].Env, 0) assert.Len(t, dep.Spec.Template.Spec.Containers[1].VolumeMounts, 2) assert.Len(t, dep.Spec.Template.Spec.Volumes, 2) + + // CR should not be touched. + assert.Len(t, jaeger.Spec.Agent.VolumeMounts, 0) + assert.Len(t, jaeger.Spec.Agent.Volumes, 0) } func TestInjectSidecarWithEnvVars(t *testing.T) {