From 8f991a20db048eadc36c07bf971fbcad31bddde4 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Thu, 8 Dec 2022 18:53:47 +0100 Subject: [PATCH] Fix corner case when there's no container to attach to Signed-off-by: Nicolas De Loof --- pkg/compose/attach.go | 3 +++ pkg/compose/start.go | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/compose/attach.go b/pkg/compose/attach.go index 52e9051935..729916446e 100644 --- a/pkg/compose/attach.go +++ b/pkg/compose/attach.go @@ -37,6 +37,9 @@ func (s *composeService) attach(ctx context.Context, project *types.Project, lis if err != nil { return nil, err } + if len(containers) == 0 { + return containers, nil + } containers.sorted() // This enforce predictable colors assignment diff --git a/pkg/compose/start.go b/pkg/compose/start.go index bd0093516f..9cc792cd4d 100644 --- a/pkg/compose/start.go +++ b/pkg/compose/start.go @@ -110,8 +110,12 @@ func getDependencyCondition(service types.ServiceConfig, project *types.Project) type containerWatchFn func(container moby.Container) error // watchContainers uses engine events to capture container start/die and notify ContainerEventListener -func (s *composeService) watchContainers(ctx context.Context, projectName string, services, required []string, +func (s *composeService) watchContainers(ctx context.Context, //nolint:gocyclo + projectName string, services, required []string, listener api.ContainerEventListener, containers Containers, onStart containerWatchFn) error { + if len(containers) == 0 { + return nil + } if len(required) == 0 { required = services }