diff --git a/pkg/storage/cassandra_dependencies.go b/pkg/storage/cassandra_dependencies.go index 177c2d0df..b0fa00b55 100644 --- a/pkg/storage/cassandra_dependencies.go +++ b/pkg/storage/cassandra_dependencies.go @@ -134,6 +134,7 @@ func cassandraDeps(jaeger *v1.Jaeger) []batchv1.Job { }, Spec: corev1.PodSpec{ ActiveDeadlineSeconds: podTimeout, + SecurityContext: jaeger.Spec.SecurityContext, Containers: []corev1.Container{{ Image: util.ImageName(jaeger.Spec.Storage.CassandraCreateSchema.Image, "jaeger-cassandra-schema-image"), Name: truncatedName, diff --git a/pkg/storage/cassandra_dependencies_test.go b/pkg/storage/cassandra_dependencies_test.go index f4b3a3094..2d9f32193 100644 --- a/pkg/storage/cassandra_dependencies_test.go +++ b/pkg/storage/cassandra_dependencies_test.go @@ -7,6 +7,7 @@ import ( "github.com/spf13/viper" "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" @@ -120,3 +121,16 @@ func TestCassandraCreateSchemaInvalidTimeout(t *testing.T) { assert.Len(t, b, 1) assert.Equal(t, int64(86400), *b[0].Spec.ActiveDeadlineSeconds) } + +func TestCassandraCreateSchemaSecurityContext(t *testing.T) { + var user, group int64 = 111, 222 + expectedSecurityContext := &corev1.PodSecurityContext{RunAsUser: &user, RunAsGroup: &group} + + jaeger := v1.NewJaeger(types.NamespacedName{Name: "TestCassandraCreateSchemaSecurityContext"}) + jaeger.Spec.JaegerCommonSpec.SecurityContext = expectedSecurityContext + + b := cassandraDeps(jaeger) + + assert.Len(t, b, 1) + assert.Equal(t, b[0].Spec.Template.Spec.SecurityContext, expectedSecurityContext) +}