]> Cypherpunks repositories - gostls13.git/commit
cmd/dist,internal/testdir: more cooperative host test mechanism
authorAustin Clements <austin@google.com>
Fri, 5 May 2023 17:26:16 +0000 (13:26 -0400)
committerAustin Clements <austin@google.com>
Fri, 12 May 2023 12:35:01 +0000 (12:35 +0000)
commit689041160f553744de241c60a5634163fde9afe4
treee48943b5e4e2b655631b0fe5ca47cd2e1968dace
parentb6c75c5fb114fd951a7e3d9aa569b9bcd06d6bc3
cmd/dist,internal/testdir: more cooperative host test mechanism

On cross-compiling builder machines, we run internal/testdir on the
host, where it can access the Go toolchain to build binaries for the
guest and run them through an exec wrapper. Currently this uses dist
test's existing host test mechanism, which is quite complicated and we
are planning to eliminate (#59999).

Switch internal/testdir to use a more cooperative mechanism. With this
CL, dist still understands that it has to build and run the test using
the host GOOS/GOARCH, but rather than doing complicated manipulation
of environment variables itself, it passes the guest GOOS/GOARCH to
the test, which can easily inject it into its environment. This means
dist test can use "go test" directly, rather than having to split up
the build and run steps.

For #37486.

Change-Id: I556938c0b641960bb778b88b13f2b26256edc7c9
Reviewed-on: https://go-review.googlesource.com/c/go/+/492985
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Run-TryBot: Austin Clements <austin@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
src/cmd/dist/test.go
src/internal/testdir/testdir_test.go