Skip to content

Commit def55ee

Browse files
aledbfroboquat
authored andcommitted
Add option to add authentication to Jaeger and custom tags
1 parent c8a7667 commit def55ee

File tree

12 files changed

+53
-15
lines changed

12 files changed

+53
-15
lines changed

Diff for: install/installer/pkg/common/common.go

+40-5
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ func DefaultEnv(cfg *config.Config) []corev1.EnvVar {
112112
)
113113
}
114114

115-
func WorkspaceTracingEnv(context *RenderContext) (res []corev1.EnvVar) {
115+
func WorkspaceTracingEnv(context *RenderContext, component string) (res []corev1.EnvVar) {
116116
var tracing *experimental.Tracing
117117

118118
_ = context.WithExperimental(func(cfg *experimental.Config) error {
@@ -122,10 +122,10 @@ func WorkspaceTracingEnv(context *RenderContext) (res []corev1.EnvVar) {
122122
return nil
123123
})
124124

125-
return tracingEnv(context, tracing)
125+
return tracingEnv(context, component, tracing)
126126
}
127127

128-
func WebappTracingEnv(context *RenderContext) (res []corev1.EnvVar) {
128+
func WebappTracingEnv(context *RenderContext, component string) (res []corev1.EnvVar) {
129129
var tracing *experimental.Tracing
130130

131131
_ = context.WithExperimental(func(cfg *experimental.Config) error {
@@ -135,10 +135,10 @@ func WebappTracingEnv(context *RenderContext) (res []corev1.EnvVar) {
135135
return nil
136136
})
137137

138-
return tracingEnv(context, tracing)
138+
return tracingEnv(context, component, tracing)
139139
}
140140

141-
func tracingEnv(context *RenderContext, tracing *experimental.Tracing) (res []corev1.EnvVar) {
141+
func tracingEnv(context *RenderContext, component string, tracing *experimental.Tracing) (res []corev1.EnvVar) {
142142
if context.Config.Observability.Tracing == nil {
143143
res = append(res, corev1.EnvVar{Name: "JAEGER_DISABLED", Value: "true"})
144144
return
@@ -154,6 +154,41 @@ func tracingEnv(context *RenderContext, tracing *experimental.Tracing) (res []co
154154
// but would make env var composition more cumbersome.
155155
}
156156

157+
if context.Config.Observability.Tracing.SecretName != nil {
158+
res = append(res, corev1.EnvVar{
159+
Name: "JAEGER_USER",
160+
ValueFrom: &corev1.EnvVarSource{SecretKeyRef: &corev1.SecretKeySelector{
161+
LocalObjectReference: corev1.LocalObjectReference{Name: *context.Config.Observability.Tracing.SecretName},
162+
Key: "JAEGER_USER",
163+
}},
164+
})
165+
166+
res = append(res, corev1.EnvVar{
167+
Name: "JAEGER_PASSWORD",
168+
ValueFrom: &corev1.EnvVarSource{SecretKeyRef: &corev1.SecretKeySelector{
169+
LocalObjectReference: corev1.LocalObjectReference{Name: *context.Config.Observability.Tracing.SecretName},
170+
Key: "JAEGER_PASSWORD",
171+
}},
172+
})
173+
}
174+
175+
res = append(res, corev1.EnvVar{Name: "JAEGER_SERVICE_NAME", Value: component})
176+
177+
jaegerTags := []string{}
178+
if context.Config.Metadata.InstallationShortname != "" {
179+
jaegerTags = append(jaegerTags, fmt.Sprintf("cluster=%v", context.Config.Metadata.InstallationShortname))
180+
}
181+
182+
if context.Config.Metadata.Region != "" {
183+
jaegerTags = append(jaegerTags, fmt.Sprintf("region=%v", context.Config.Metadata.Region))
184+
}
185+
186+
if len(jaegerTags) > 0 {
187+
res = append(res,
188+
corev1.EnvVar{Name: "JAEGER_TAGS", Value: strings.Join(jaegerTags, ",")},
189+
)
190+
}
191+
157192
samplerType := experimental.TracingSampleTypeConst
158193
samplerParam := "1"
159194

Diff for: install/installer/pkg/components/agent-smith/daemonset.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ func daemonset(ctx *common.RenderContext) ([]runtime.Object, error) {
6969
}},
7070
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
7171
common.DefaultEnv(&ctx.Config),
72-
common.WorkspaceTracingEnv(ctx),
72+
common.WorkspaceTracingEnv(ctx, Component),
7373
common.NodeNameEnv(ctx),
7474
)),
7575
SecurityContext: &corev1.SecurityContext{

Diff for: install/installer/pkg/components/blobserve/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
115115
},
116116
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
117117
common.DefaultEnv(&ctx.Config),
118-
common.WorkspaceTracingEnv(ctx),
118+
common.WorkspaceTracingEnv(ctx, Component),
119119
)),
120120
VolumeMounts: []corev1.VolumeMount{{
121121
Name: "config",

Diff for: install/installer/pkg/components/content-service/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
6868
},
6969
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
7070
common.DefaultEnv(&ctx.Config),
71-
common.WorkspaceTracingEnv(ctx),
71+
common.WorkspaceTracingEnv(ctx, Component),
7272
[]corev1.EnvVar{{
7373
Name: "GRPC_GO_RETRY",
7474
Value: "on",

Diff for: install/installer/pkg/components/image-builder-mk3/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
154154
},
155155
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
156156
common.DefaultEnv(&ctx.Config),
157-
common.WorkspaceTracingEnv(ctx),
157+
common.WorkspaceTracingEnv(ctx, Component),
158158
)),
159159
Resources: common.ResourceRequirements(ctx, Component, Component, corev1.ResourceRequirements{
160160
Requests: corev1.ResourceList{

Diff for: install/installer/pkg/components/registry-facade/daemonset.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ func daemonset(ctx *common.RenderContext) ([]runtime.Object, error) {
235235
},
236236
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
237237
common.DefaultEnv(&ctx.Config),
238-
common.WorkspaceTracingEnv(ctx),
238+
common.WorkspaceTracingEnv(ctx, Component),
239239
[]corev1.EnvVar{
240240
{
241241
Name: "GRPC_GO_RETRY",

Diff for: install/installer/pkg/components/server/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
7979
env := common.MergeEnv(
8080
common.DefaultEnv(&ctx.Config),
8181
common.DatabaseEnv(&ctx.Config),
82-
common.WebappTracingEnv(ctx),
82+
common.WebappTracingEnv(ctx, Component),
8383
common.AnalyticsEnv(&ctx.Config),
8484
common.MessageBusEnv(&ctx.Config),
8585
common.ConfigcatEnv(ctx),

Diff for: install/installer/pkg/components/ws-daemon/daemonset.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ fi
196196
}},
197197
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
198198
common.DefaultEnv(&cfg),
199-
common.WorkspaceTracingEnv(ctx),
199+
common.WorkspaceTracingEnv(ctx, Component),
200200
common.NodeNameEnv(ctx),
201201
)),
202202
Resources: common.ResourceRequirements(ctx, Component, Component, corev1.ResourceRequirements{Requests: corev1.ResourceList{

Diff for: install/installer/pkg/components/ws-manager-bridge/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
127127
},
128128
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
129129
common.DefaultEnv(&ctx.Config),
130-
common.WorkspaceTracingEnv(ctx),
130+
common.WorkspaceTracingEnv(ctx, Component),
131131
common.AnalyticsEnv(&ctx.Config),
132132
common.MessageBusEnv(&ctx.Config),
133133
common.DatabaseEnv(&ctx.Config),

Diff for: install/installer/pkg/components/ws-manager/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
5454
},
5555
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
5656
common.DefaultEnv(&ctx.Config),
57-
common.WorkspaceTracingEnv(ctx),
57+
common.WorkspaceTracingEnv(ctx, Component),
5858
[]corev1.EnvVar{{Name: "GRPC_GO_RETRY", Value: "on"}},
5959
)),
6060
VolumeMounts: []corev1.VolumeMount{

Diff for: install/installer/pkg/components/ws-proxy/deployment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
118118
},
119119
Env: common.CustomizeEnvvar(ctx, Component, common.MergeEnv(
120120
common.DefaultEnv(&ctx.Config),
121-
common.WorkspaceTracingEnv(ctx),
121+
common.WorkspaceTracingEnv(ctx, Component),
122122
common.AnalyticsEnv(&ctx.Config),
123123
)),
124124
ReadinessProbe: &corev1.Probe{

Diff for: install/installer/pkg/config/v1/config.go

+3
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,9 @@ type Analytics struct {
220220
type Tracing struct {
221221
Endpoint *string `json:"endpoint,omitempty"`
222222
AgentHost *string `json:"agentHost,omitempty"`
223+
// Name of the kubernetes secret to use for Jaeger authentication
224+
// The secret should contains two definitions: JAEGER_USER and JAEGER_PASSWORD
225+
SecretName *string `json:"secretName,omitempty"`
223226
}
224227

225228
type Database struct {

0 commit comments

Comments
 (0)