Skip to content

Commit a745fca

Browse files
mknyszekgopherbot
authored andcommitted
sweet: don't send cockroachdb build output to stdout/stderr
Currently the build for CockroachDB always sends its output to stdout/stderr, and bazel absolutely loves to produce a firehose of output. This is very annoying when just trying to run sweet yourself. This change captures the output instead and only dumps it on error. Change-Id: I445731d3169d02bcdcc6e6d2ba02c0b510e9b64f Reviewed-on: https://go-review.googlesource.com/c/benchmarks/+/613935 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Michael Knyszek <mknyszek@google.com> Reviewed-by: Michael Pratt <mpratt@google.com>
1 parent 35222a1 commit a745fca

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

sweet/harnesses/cockroachdb.go

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ package harnesses
66

77
import (
88
"fmt"
9-
"os"
109
"os/exec"
1110
"path/filepath"
1211
"runtime"
@@ -66,11 +65,12 @@ func (h CockroachDB) Build(cfg *common.Config, bcfg *common.BuildConfig) error {
6665
defer func() {
6766
cmd := exec.Command(bazel(), "clean", "--expunge")
6867
cmd.Dir = bcfg.SrcDir
69-
cmd.Stdout = os.Stdout
70-
cmd.Stderr = os.Stderr
7168
// Cleanup is best effort, there might not be anything to clean up
7269
// if we fail early enough in the build process.
73-
_ = cmd.Run()
70+
out, err := cmd.CombinedOutput()
71+
if err != nil {
72+
log.Printf("failed to run %q: %v: output:\n%s", cmd, err, out)
73+
}
7474
}()
7575

7676
// Configure the build env.
@@ -82,20 +82,16 @@ func (h CockroachDB) Build(cfg *common.Config, bcfg *common.BuildConfig) error {
8282
cmd := exec.Command(bazel(), "run", "//pkg/gen:code")
8383
cmd.Dir = bcfg.SrcDir
8484
cmd.Env = env.Collapse()
85-
cmd.Stdout = os.Stdout
86-
cmd.Stderr = os.Stderr
87-
if err := cmd.Run(); err != nil {
88-
return err
85+
if out, err := cmd.CombinedOutput(); err != nil {
86+
return fmt.Errorf("failed to run %q: %v: output:\n%s", cmd, err, out)
8987
}
9088

9189
// Build the c-deps needed.
9290
cmd = exec.Command(bazel(), "run", "//pkg/cmd/generate-cgo:generate-cgo", "--run_under", fmt.Sprintf("cd %s && ", bcfg.SrcDir))
9391
cmd.Dir = bcfg.SrcDir
9492
cmd.Env = env.Collapse()
95-
cmd.Stdout = os.Stdout
96-
cmd.Stderr = os.Stderr
97-
if err := cmd.Run(); err != nil {
98-
return err
93+
if out, err := cmd.CombinedOutput(); err != nil {
94+
return fmt.Errorf("failed to run %q: %v: output:\n%s", cmd, err, out)
9995
}
10096

10197
// Get the Go version. Then, finall build the cockroach binary with `go build`.

0 commit comments

Comments
 (0)