Description
The release
command is used by releasebot
to build targets. In the first stage (-mode=prepare), it runs tests. In second stage (-mode=release), it skips tests.
release
supports 12 normal targets (not counting new optional longtest-only targets; described in #29252 but can be ignored in this issue), see here.
These targets are passing tests (they run successfully without -skip_tests
flag given to release
) on a recent master
commit (e.g., 09e791f):
- src
- linux-armv6l
- linux-ppc64le
- linux-s390x
These are not passing:
darwin-amd64 - blocked on x/build/cmd/release: fails for -target=linux-amd64 due to non-default GOROOT_FINAL value causing TestScript/test_race_install_cgo test to fail #39385 and x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391freebsd-386 - blocked on x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391 onlyfreebsd-amd64 - blocked on x/build/cmd/release: fails for -target=linux-amd64 due to non-default GOROOT_FINAL value causing TestScript/test_race_install_cgo test to fail #39385 and x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391linux-386 - blocked on x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391 onlylinux-amd64 - blocked on x/build/cmd/release: fails for -target=linux-amd64 due to non-default GOROOT_FINAL value causing TestScript/test_race_install_cgo test to fail #39385 and x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391linux-arm64 - blocked on x/build/cmd/release: fails for -target=linux-amd64 due to non-default GOROOT_FINAL value causing TestScript/test_race_install_cgo test to fail #39385 and x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391- windows-386 - blocked on x/build/cmd/release: TestScript/test_race_install_cgo and TestDWARF fail for -target=windows-amd64, and just TestDWARF fails for -target=windows-386 #39478
blocked on x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391 only - windows-amd64 - blocked on x/build/cmd/release: TestScript/test_race_install_cgo and TestDWARF fail for -target=windows-amd64, and just TestDWARF fails for -target=windows-386 #39478
blocked on x/build/cmd/release: fails for -target=linux-amd64 due to non-default GOROOT_FINAL value causing TestScript/test_race_install_cgo test to fail #39385 and x/build/cmd/release: test/winbatch.go test fails for -target=darwin-amd64 #39391
Each one can be reproduced if your account has permissions needed to run releasebot
(they are documented at https://github.com/golang/build/tree/master/cmd/releasebot#permissions) with:
$ release -target=<target_name> -version=go1.15beta1 -watch -rev=09e791feb1dfbfc05578a17cd9c035ef82af4033
(The release
command creates a tarball and places it in a temporary staging directory; it doesn't publish anything, so it is safe to run as shown above.)
See #39385 as an example of a specific test that is failing.
This is the high-level tracking issue for the entire problem. Next, I'll be updating it and splitting into smaller, distinct failures that can be investigated independently.
This issue requires investigation. The problem is either in how the release
command sets up the environment and executes commands on the target builder, or in the builder definition, or in the test, or some combination. Depending on what we learn, we may end up deciding this is okay to resolve after beta1 (but before the final release) and skip these test failures in order to make the Go 1.15 beta 1 available for testing and finding unknown issues sooner.
/cc @andybons @toothrot @cagedmantis @golang/osp-team