NET-5187: Upgrade test timeout due to log producer errors (#18461)

Stop log producer before restarting container
This commit is contained in:
Anita Akaeze 2023-08-15 12:34:02 -04:00 committed by GitHub
parent d565056fb0
commit 0e94f48ce0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 19 additions and 5 deletions

View File

@ -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
}