X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/060d38d627bd1e51dd2b3c6e7de9af6aa7d7b6f3..16f704326f44fd1e5e5e60b936c9b5895d6a6ff8:/sdk/go/arvadostest/run_servers.go diff --git a/sdk/go/arvadostest/run_servers.go b/sdk/go/arvadostest/run_servers.go index c567560bc1..490a7f3e03 100644 --- a/sdk/go/arvadostest/run_servers.go +++ b/sdk/go/arvadostest/run_servers.go @@ -66,6 +66,9 @@ func chdirToPythonTests() { for { if err := os.Chdir("sdk/python/tests"); err == nil { pythonTestDir, err = os.Getwd() + if err != nil { + log.Fatal(err) + } return } if parent, err := os.Getwd(); err != nil || parent == "/" { @@ -101,7 +104,10 @@ func StopAPI() { defer os.Chdir(cwd) chdirToPythonTests() - bgRun(exec.Command("python", "run_test_server.py", "stop")) + cmd := exec.Command("python", "run_test_server.py", "stop") + bgRun(cmd) + // Without Wait, "go test" in go1.10.1 tends to hang. https://github.com/golang/go/issues/24050 + cmd.Wait() } // StartKeep starts the given number of keep servers, @@ -129,12 +135,9 @@ func StopKeep(numKeepServers int) { chdirToPythonTests() cmd := exec.Command("python", "run_test_server.py", "stop_keep", "--num-keep-servers", strconv.Itoa(numKeepServers)) - cmd.Stdin = nil - cmd.Stderr = os.Stderr - cmd.Stdout = os.Stderr - if err := cmd.Run(); err != nil { - log.Fatalf("%+v: %s", cmd.Args, err) - } + bgRun(cmd) + // Without Wait, "go test" in go1.10.1 tends to hang. https://github.com/golang/go/issues/24050 + cmd.Wait() } // Start cmd, with stderr and stdout redirected to our own