From 65803ea12e8a7434cf7a56278cd661a14a606744 Mon Sep 17 00:00:00 2001 From: Guillaume Lours <705411+glours@users.noreply.github.com> Date: Mon, 30 Jun 2025 10:48:28 +0200 Subject: [PATCH] remove error message from exec outpout by default Add the error as a log for verbose mode Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com> --- cmd/compose/exec.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/cmd/compose/exec.go b/cmd/compose/exec.go index 0e7456bd0..231691563 100644 --- a/cmd/compose/exec.go +++ b/cmd/compose/exec.go @@ -18,13 +18,16 @@ package compose import ( "context" + "errors" "fmt" + "os" "github.com/compose-spec/compose-go/v2/types" "github.com/docker/cli/cli" "github.com/docker/cli/cli/command" "github.com/docker/compose/v2/pkg/api" "github.com/docker/compose/v2/pkg/compose" + "github.com/sirupsen/logrus" "github.com/spf13/cobra" ) @@ -60,7 +63,15 @@ func execCommand(p *ProjectOptions, dockerCli command.Cli, backend api.Service) return nil }), RunE: Adapt(func(ctx context.Context, args []string) error { - return runExec(ctx, dockerCli, backend, opts) + err := runExec(ctx, dockerCli, backend, opts) + if err != nil { + logrus.Debugf("%v", err) + var cliError cli.StatusError + if ok := errors.As(err, &cliError); ok { + os.Exit(err.(cli.StatusError).StatusCode) //nolint: errorlint + } + } + return err }), ValidArgsFunction: completeServiceNames(dockerCli, p), }