From df9a0adfa06c52583532ffa83677818e52419d66 Mon Sep 17 00:00:00 2001 From: "p.zindyaev" Date: Wed, 14 Jan 2026 10:00:03 +0300 Subject: [PATCH] feature(ADS-3007): add JAVA_HOME/bin to PATH env variable --- cmd/ad-runtime-utils/app.go | 1 + examples/config/kafka.yaml | 41 ++++++++++++++++++++++--------------- internal/exec/exec.go | 3 +++ 3 files changed, 28 insertions(+), 17 deletions(-) diff --git a/cmd/ad-runtime-utils/app.go b/cmd/ad-runtime-utils/app.go index a512ef3..f3dbae6 100644 --- a/cmd/ad-runtime-utils/app.go +++ b/cmd/ad-runtime-utils/app.go @@ -149,6 +149,7 @@ func startService(service string, envName string, envPath string, cfg config.Con srvConfig.EnvVars = make(map[string]string) } srvConfig.EnvVars[envName] = envPath + srvConfig.EnvVars["PATH"] = fmt.Sprintf("%s/bin:%s", envPath, os.Getenv("PATH")) if !supervise { return exec.RunExecutable(srvConfig.Executable, srvConfig.ExecutableArgs, srvConfig.EnvVars) } diff --git a/examples/config/kafka.yaml b/examples/config/kafka.yaml index 65cb6d5..e1fa5b8 100644 --- a/examples/config/kafka.yaml +++ b/examples/config/kafka.yaml @@ -1,17 +1,24 @@ -executable: bin/kafka-server-start.sh -executable_args: - - config/server.properties -runtimes: - java: - version: "21" -health_checks: - - type: port - params: - port: 9092 - timeout: 20 - protocol: tcp - - type: port - params: - port: 9093 - timeout: 20 - protocol: tcp +services: + KAFKA: + executable: /usr/lib/kafka/bin/kafka-server-start.sh + executable_args: + - /usr/lib/kafka/config/server.properties + runtimes: + java: + version: "21" + env_vars: + KAFKA_OPTS: "-DZstdTempFolder=/usr/lib/kafka/tmp -Dorg.xerial.snappy.tempdir=/usr/lib/kafka/tmp -Djava.io.tmpdir=/var/tmp" + LOG_DIR: "/var/log/kafka" + PID_DIR: "/var/run/kafka" + JMX_PORT: "9999" + health_checks: + - type: port + params: + port: 9092 + timeout: 20 + protocol: tcp + - type: port + params: + port: 9093 + timeout: 20 + protocol: tcp diff --git a/internal/exec/exec.go b/internal/exec/exec.go index ed5e740..a75f013 100644 --- a/internal/exec/exec.go +++ b/internal/exec/exec.go @@ -3,6 +3,7 @@ package exec import ( "context" "fmt" + "os" "os/exec" ) @@ -10,6 +11,8 @@ import ( func RunExecutableAsync(executablePath string, args []string, envVars map[string]string) (*exec.Cmd, error) { ctx := context.TODO() cmd := exec.CommandContext(ctx, executablePath, args...) + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr // Add environment variables to the command. for k, v := range envVars {