From e08f826ce6541069b6abe0ce9a1922527dac0159 Mon Sep 17 00:00:00 2001 From: hc-github-team-consul-core Date: Tue, 15 Aug 2023 12:20:44 -0500 Subject: [PATCH] Backport of NET-5187: Upgrade test timeout due to log producer errors into release/1.16.x (#18472) backport of commit 59bfc81d49a905480329a38c0d8d0109ea100d3e Co-authored-by: NiniOak --- .../consul-container/libs/service/connect.go | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/test/integration/consul-container/libs/service/connect.go b/test/integration/consul-container/libs/service/connect.go index 4251a6d3c..a79b64b5c 100644 --- a/test/integration/consul-container/libs/service/connect.go +++ b/test/integration/consul-container/libs/service/connect.go @@ -68,14 +68,17 @@ func (g ConnectContainer) GetPort(port int) (int, error) { } func (g ConnectContainer) Restart() error { - _, err := g.GetStatus() - if err != nil { - return fmt.Errorf("error fetching sidecar container state %s", err) + var deferClean utils.ResettableDefer + defer deferClean.Execute() + + if utils.FollowLog { + if err := g.container.StopLogProducer(); err != nil { + return fmt.Errorf("stopping log producer: %w", err) + } } fmt.Printf("Stopping container: %s\n", g.GetName()) - err = g.container.Stop(g.ctx, nil) - + err := g.container.Stop(g.ctx, nil) if err != nil { return fmt.Errorf("error stopping sidecar container %s", err) } @@ -85,6 +88,17 @@ func (g ConnectContainer) Restart() error { if err != nil { return fmt.Errorf("error starting sidecar container %s", err) } + + if utils.FollowLog { + if err := g.container.StartLogProducer(g.ctx); err != nil { + return fmt.Errorf("starting log producer: %w", err) + } + g.container.FollowOutput(&LogConsumer{}) + deferClean.Add(func() { + _ = g.container.StopLogProducer() + }) + } + return nil }