From 4eb43c53fa4c488d49dc26939a12c9bbe576f705 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Tue, 18 Jul 2023 22:51:54 +0200 Subject: [PATCH] pkg/compose: RunOneOffContainer: don't use NewStartOptions() It's no longer used in docker/cli, and doesn't do anything other than creating an empty struct, so replacing it (as we're planning to deprecate that function) Signed-off-by: Sebastiaan van Stijn --- pkg/compose/run.go | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/pkg/compose/run.go b/pkg/compose/run.go index 3297eab4773..6924c206141 100644 --- a/pkg/compose/run.go +++ b/pkg/compose/run.go @@ -18,6 +18,7 @@ package compose import ( "context" + "errors" "fmt" "os" "os/signal" @@ -36,11 +37,6 @@ func (s *composeService) RunOneOffContainer(ctx context.Context, project *types. return 0, err } - start := cmd.NewStartOptions() - start.OpenStdin = !opts.Detach && opts.Interactive - start.Attach = !opts.Detach - start.Containers = []string{containerID} - // remove cancellable context signal handler so we can forward signals to container without compose to exit signal.Reset() @@ -49,9 +45,14 @@ func (s *composeService) RunOneOffContainer(ctx context.Context, project *types. go cmd.ForwardAllSignals(ctx, s.dockerCli, containerID, sigc) defer signal.Stop(sigc) - err = cmd.RunStart(s.dockerCli, &start) - if sterr, ok := err.(cli.StatusError); ok { - return sterr.StatusCode, nil + err = cmd.RunStart(s.dockerCli, &cmd.StartOptions{ + OpenStdin: !opts.Detach && opts.Interactive, + Attach: !opts.Detach, + Containers: []string{containerID}, + }) + var stErr cli.StatusError + if errors.As(err, &stErr) { + return stErr.StatusCode, nil } return 0, err }