Skip to content
This repository was archived by the owner on Nov 27, 2023. It is now read-only.

Commit 0c0c0be

Browse files
authored
Merge pull request #1200 from docker/fix_start_display
Fix compose start display
2 parents c9028f9 + 11950ef commit 0c0c0be

File tree

2 files changed

+27
-21
lines changed

2 files changed

+27
-21
lines changed

cli/cmd/compose/start.go

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import (
2323
"github.com/spf13/cobra"
2424

2525
"github.com/docker/compose-cli/api/client"
26-
"github.com/docker/compose-cli/api/compose"
2726
"github.com/docker/compose-cli/api/progress"
2827
"github.com/docker/compose-cli/cli/formatter"
2928
)
@@ -55,21 +54,22 @@ func runStart(ctx context.Context, opts startOptions, services []string) error {
5554
return err
5655
}
5756

58-
var consumer compose.LogConsumer
59-
if !opts.Detach {
60-
consumer = formatter.NewLogConsumer(ctx, os.Stdout)
57+
project, err := opts.toProject()
58+
if err != nil {
59+
return err
60+
}
61+
62+
err = filter(project, services)
63+
if err != nil {
64+
return err
65+
}
66+
67+
if opts.Detach {
68+
_, err = progress.Run(ctx, func(ctx context.Context) (string, error) {
69+
return "", c.ComposeService().Start(ctx, project, nil)
70+
})
71+
return err
6172
}
62-
_, err = progress.Run(ctx, func(ctx context.Context) (string, error) {
63-
project, err := opts.toProject()
64-
if err != nil {
65-
return "", err
66-
}
6773

68-
err = filter(project, services)
69-
if err != nil {
70-
return "", err
71-
}
72-
return "", c.ComposeService().Start(ctx, project, consumer)
73-
})
74-
return err
74+
return c.ComposeService().Start(ctx, project, formatter.NewLogConsumer(ctx, os.Stdout))
7575
}

cli/cmd/compose/up.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -119,21 +119,27 @@ func runCreateStart(ctx context.Context, opts upOptions, services []string) erro
119119
}
120120

121121
_, err = progress.Run(ctx, func(ctx context.Context) (string, error) {
122-
return "", c.ComposeService().Create(ctx, project, compose.CreateOptions{
122+
err := c.ComposeService().Create(ctx, project, compose.CreateOptions{
123123
RemoveOrphans: opts.removeOrphans,
124124
Recreate: opts.recreateStrategy(),
125125
})
126+
if err != nil {
127+
return "", err
128+
}
129+
if opts.Detach {
130+
err = c.ComposeService().Start(ctx, project, nil)
131+
}
132+
return "", err
126133
})
127134
if err != nil {
128135
return err
129136
}
130137

131-
var consumer compose.LogConsumer
132-
if !opts.Detach {
133-
consumer = formatter.NewLogConsumer(ctx, os.Stdout)
138+
if opts.Detach {
139+
return nil
134140
}
135141

136-
err = c.ComposeService().Start(ctx, project, consumer)
142+
err = c.ComposeService().Start(ctx, project, formatter.NewLogConsumer(ctx, os.Stdout))
137143
if errors.Is(ctx.Err(), context.Canceled) {
138144
fmt.Println("Gracefully stopping...")
139145
ctx = context.Background()

0 commit comments

Comments
 (0)