Conversation
|
@Choraden what's the status? |
|
I've encountered goleak errors as if the proxy would not close all the goroutines gracefully, but rather a forced shutdown happens. I had no time to investigate it further. |
e2e/setups.go
Outdated
| forwarder.ProxyService(). | ||
| WithProtocol(proxyScheme)). | ||
| WithProtocol(proxyScheme). | ||
| WithGoleak()). |
There was a problem hiding this comment.
I wonder, why not enable it by default?
There was a problem hiding this comment.
Right. I enabled goleak in a proxy service by default.
utils/compose/cmd.go
Outdated
| return c.quietRun(c.cmd("stop", args)) | ||
| } | ||
|
|
||
| func (c *Command) ExitedSuccessfully(services []string) error { |
There was a problem hiding this comment.
It would be more useful to export serviceExitCode and add plain functions to do assertions about it.
There was a problem hiding this comment.
compose.Command now exports ServiceExitCode.
e2e/setup/runner.go
Outdated
| if err := cmd.Stop(); err != nil { | ||
| return fmt.Errorf("compose stop: %w", err) | ||
| } | ||
| if err := cmd.ExitedSuccessfully(r.services(s)); err != nil { |
There was a problem hiding this comment.
Don't we want to check exit status of all services?
There was a problem hiding this comment.
It does check exit code of all services.
|
This is very good progress. |
Unlike the down command, stop does not remove containers, allowing you to check their status.
|
@mmatczuk I've addressed your comments. |
This patch extends compose with functionality to check exit codes of services. It improves tests quality as it enforces that all services exit with code 0. That allows to correctly assert goleak errors.
Fixes #516