diff --git a/tests/framework/e2e/cluster_proxy.go b/tests/framework/e2e/cluster_proxy.go index 4e387410b..e6174824d 100644 --- a/tests/framework/e2e/cluster_proxy.go +++ b/tests/framework/e2e/cluster_proxy.go @@ -159,10 +159,21 @@ func (pp *proxyProc) Stop() error { if pp.proc == nil { return nil } - if err := pp.proc.Stop(); err != nil && !strings.Contains(err.Error(), "exit status 1") { - // v2proxy exits with status 1 on auto tls; not sure why + err := pp.proc.Stop() + if err != nil { return err } + + err = pp.proc.Close() + if err != nil { + // proxy received SIGTERM signal + if !(strings.Contains(err.Error(), "unexpected exit code") || + // v2proxy exits with status 1 on auto tls; not sure why + strings.Contains(err.Error(), "exit status 1")) { + + return err + } + } pp.proc = nil <-pp.donec pp.donec = make(chan struct{})