Skip to content

Commit

Permalink
Fix ignore-proxy feature flag for oneAgent daemonset (#3120)
Browse files Browse the repository at this point in the history
Co-authored-by: Marcell Sevcsik <[email protected]>
  • Loading branch information
luhi-DT and 0sewa0 authored May 6, 2024
1 parent c018307 commit a78330f
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 2 deletions.
4 changes: 2 additions & 2 deletions pkg/controllers/dynakube/oneagent/daemonset/volumes.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func prepareVolumeMounts(instance *dynatracev1beta1.DynaKube) []corev1.VolumeMou
volumeMounts = append(volumeMounts, getActiveGateCaCertVolumeMount())
}

if instance != nil && instance.HasProxy() {
if instance != nil && instance.NeedsOneAgentProxy() {
volumeMounts = append(volumeMounts, getHttpProxyMount())
}

Expand Down Expand Up @@ -106,7 +106,7 @@ func prepareVolumes(instance *dynatracev1beta1.DynaKube) []corev1.Volume {
volumes = append(volumes, getActiveGateCaCertVolume(instance))
}

if instance.HasProxy() {
if instance.NeedsOneAgentProxy() {
volumes = append(volumes, buildHttpProxyVolume(instance))
}

Expand Down
23 changes: 23 additions & 0 deletions pkg/controllers/dynakube/oneagent/daemonset/volumes_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -227,4 +227,27 @@ func TestPrepareVolumeMounts(t *testing.T) {
assert.Contains(t, volumeMounts, getClusterCaCertVolumeMount())
assert.Contains(t, volumeMounts, getCSIStorageMount())
})
t.Run(`has no volume if proxy is set and proxy ignore feature-flags is used`, func(t *testing.T) {
instance := &dynatracev1beta1.DynaKube{
ObjectMeta: corev1.ObjectMeta{
Name: "Dynakube",
Namespace: "dynatrace",
Annotations: map[string]string{
dynatracev1beta1.AnnotationFeatureOneAgentIgnoreProxy: "true",
},
},
Spec: dynatracev1beta1.DynaKubeSpec{
Proxy: &dynatracev1beta1.DynaKubeProxy{ValueFrom: proxy.BuildSecretName("Dynakube")},
OneAgent: dynatracev1beta1.OneAgentSpec{
HostMonitoring: &dynatracev1beta1.HostInjectSpec{},
},
},
}

volumes := prepareVolumes(instance)
mounts := prepareVolumeMounts(instance)

assert.NotContains(t, volumes, buildHttpProxyVolume(instance))
assert.NotContains(t, mounts, getHttpProxyMount())
})
}

0 comments on commit a78330f

Please sign in to comment.