Skip to content

Commit 7811cd3

Browse files
author
shuhanliu
committed
Optimization logic
1 parent 238984a commit 7811cd3

File tree

1 file changed

+13
-17
lines changed
  • pkg/inject/pkg/kube/inject/apply/javaagent

1 file changed

+13
-17
lines changed

pkg/inject/pkg/kube/inject/apply/javaagent/patch.go

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,13 @@ func nameOfPluginDefault(v string) string {
224224
return v + "-default-properties"
225225
}
226226

227+
func updateJavaEnvVar(envVar corev1.EnvVar, cmd string, version string) corev1.EnvVar {
228+
return corev1.EnvVar{
229+
Name: "JAVA_TOOL_OPTIONS",
230+
Value: envVar.Value + " " + cmd + version,
231+
}
232+
}
233+
227234
func (pb *PodPatchBuilder) updateContainer(opt *inject.PatchOptions, sidecarMode utils.SidecarMode, pod *corev1.Pod,
228235
target []corev1.Container, basePath string) []inject.Rfc6902PatchOperation {
229236

@@ -267,33 +274,22 @@ func (pb *PodPatchBuilder) updateContainer(opt *inject.PatchOptions, sidecarMode
267274
}
268275
}
269276
if javaEnvIndex != -1 {
270-
oldVal := envs[javaEnvIndex].Value
271277
if _, valid := oldAgentVersions[annonations[customJavaAgentVersion]]; !valid {
272-
envs[javaEnvIndex] = corev1.EnvVar{
273-
Name: "JAVA_TOOL_OPTIONS",
274-
Value: oldVal + " " + ActiveJavaAgentCmd + javaToolOptionsValue,
275-
}
278+
envs[javaEnvIndex] = updateJavaEnvVar(envs[javaEnvIndex], ActiveJavaAgentCmd, javaToolOptionsValue)
276279
} else {
277-
envs[javaEnvIndex] = corev1.EnvVar{
278-
Name: "JAVA_TOOL_OPTIONS",
279-
Value: oldVal + " " + fmt.Sprintf(OldActiveJavaAgentCmd, opt.ExternalInfo[customJavaAgentVersion]),
280-
}
280+
envs[javaEnvIndex] = updateJavaEnvVar(envs[javaEnvIndex], fmt.Sprintf(OldActiveJavaAgentCmd, opt.ExternalInfo[customJavaAgentVersion]), "")
281281
}
282282
}
283283
}
284284
if javaEnvIndex == -1 {
285285
// 注入 java agent 需要用到的参数信息
286+
var newEnvVar corev1.EnvVar
286287
if _, valid := oldAgentVersions[annonations[customJavaAgentVersion]]; !valid {
287-
container.Env = append(container.Env, corev1.EnvVar{
288-
Name: "JAVA_TOOL_OPTIONS",
289-
Value: ActiveJavaAgentCmd + javaToolOptionsValue,
290-
})
288+
newEnvVar = updateJavaEnvVar(corev1.EnvVar{}, ActiveJavaAgentCmd, javaToolOptionsValue)
291289
} else {
292-
container.Env = append(container.Env, corev1.EnvVar{
293-
Name: "JAVA_TOOL_OPTIONS",
294-
Value: fmt.Sprintf(OldActiveJavaAgentCmd, opt.ExternalInfo[customJavaAgentVersion]),
295-
})
290+
newEnvVar = updateJavaEnvVar(corev1.EnvVar{}, fmt.Sprintf(OldActiveJavaAgentCmd, opt.ExternalInfo[customJavaAgentVersion]), "")
296291
}
292+
container.Env = append(container.Env, newEnvVar)
297293
}
298294

299295
// container 需要新挂载磁盘

0 commit comments

Comments
 (0)