diff --git a/pkg/inject/sidecar.go b/pkg/inject/sidecar.go index ce9d0a02e1..ceeed7ca1e 100644 --- a/pkg/inject/sidecar.go +++ b/pkg/inject/sidecar.go @@ -159,6 +159,7 @@ func container(jaeger *v1.Jaeger, dep *appsv1.Deployment) corev1.Container { { ContainerPort: zkCompactTrft, Name: "zk-compact-trft", + Protocol: corev1.ProtocolUDP, }, { ContainerPort: configRest, @@ -167,10 +168,12 @@ func container(jaeger *v1.Jaeger, dep *appsv1.Deployment) corev1.Container { { ContainerPort: jgCompactTrft, Name: "jg-compact-trft", + Protocol: corev1.ProtocolUDP, }, { ContainerPort: jgBinaryTrft, Name: "jg-binary-trft", + Protocol: corev1.ProtocolUDP, }, }, Resources: commonSpec.Resources, diff --git a/pkg/inject/sidecar_test.go b/pkg/inject/sidecar_test.go index 33492df73d..1b449f458d 100644 --- a/pkg/inject/sidecar_test.go +++ b/pkg/inject/sidecar_test.go @@ -161,6 +161,25 @@ func TestInjectSidecarWithEnvVarsOverridePropagation(t *testing.T) { assert.Contains(t, dep.Spec.Template.Spec.Containers[0].Env, corev1.EnvVar{Name: envVarServiceName, Value: "testapp.default"}) } +func TestSidecarDefaultPorts(t *testing.T) { + // prepare + jaeger := v1.NewJaeger(types.NamespacedName{Name: "TestSidecarPorts"}) + dep := dep(map[string]string{Annotation: jaeger.Name}, map[string]string{"app": "testapp"}) + + // test + dep = Sidecar(jaeger, dep) + + // verify + assert.Len(t, dep.Spec.Template.Spec.Containers, 2) + assert.Contains(t, dep.Spec.Template.Spec.Containers[1].Image, "jaeger-agent") + + assert.Len(t, dep.Spec.Template.Spec.Containers[1].Ports, 4) + assert.Contains(t, dep.Spec.Template.Spec.Containers[1].Ports, corev1.ContainerPort{ContainerPort: 5775, Name: "zk-compact-trft", Protocol: corev1.ProtocolUDP}) + assert.Contains(t, dep.Spec.Template.Spec.Containers[1].Ports, corev1.ContainerPort{ContainerPort: 5778, Name: "config-rest"}) + assert.Contains(t, dep.Spec.Template.Spec.Containers[1].Ports, corev1.ContainerPort{ContainerPort: 6831, Name: "jg-compact-trft", Protocol: corev1.ProtocolUDP}) + assert.Contains(t, dep.Spec.Template.Spec.Containers[1].Ports, corev1.ContainerPort{ContainerPort: 6832, Name: "jg-binary-trft", Protocol: corev1.ProtocolUDP}) +} + func TestSkipInjectSidecar(t *testing.T) { // prepare jaeger := v1.NewJaeger(types.NamespacedName{Name: "TestSkipInjectSidecar"}) diff --git a/pkg/service/agent_test.go b/pkg/service/agent_test.go index 9345a9ef99..100db2fde2 100644 --- a/pkg/service/agent_test.go +++ b/pkg/service/agent_test.go @@ -4,6 +4,7 @@ import ( "testing" "github.com/stretchr/testify/assert" + corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/types" v1 "github.com/jaegertracing/jaeger-operator/pkg/apis/jaegertracing/v1" @@ -26,6 +27,13 @@ func TestAgentServiceNameAndPorts(t *testing.T) { for _, port := range svc.Spec.Ports { ports[port.Port] = true + switch port.Port { + case + 5775, + 6831, + 6832: + assert.Equal(t, port.Protocol, corev1.ProtocolUDP, "Expected port %v to be UDP, but wasn't", port) + } } for k, v := range ports {