]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/dist: skip moved GOROOT on Go's Windows builders when not sharding tests
authorBrad Fitzpatrick <bradfitz@golang.org>
Thu, 27 Jul 2017 04:33:18 +0000 (04:33 +0000)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 27 Jul 2017 05:04:28 +0000 (05:04 +0000)
Change-Id: I0bcae339624e7d61037d9ea0885b7bd07491bbb6
Reviewed-on: https://go-review.googlesource.com/51430
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/cmd/dist/test.go

index 6846970ecf8d627363d5376f719e80e42974b30e..73432d31ea37f63853d9f4590fe9db7482aac895 100644 (file)
@@ -447,6 +447,17 @@ func (t *tester) registerTests() {
                                t.runPending(dt)
                                moved := t.goroot + "-moved"
                                if err := os.Rename(t.goroot, moved); err != nil {
+                                       if t.goos == "windows" {
+                                               // Fails on Windows (with "Access is denied") if a process
+                                               // or binary is in this directory. For instance, using all.bat
+                                               // when run from c:\workdir\go\src fails here
+                                               // if GO_BUILDER_NAME is set. Our builders invoke tests
+                                               // a different way which happens to work when sharding
+                                               // tests, but we should be tolerant of the non-sharded
+                                               // all.bat case.
+                                               log.Printf("skipping test on Windows")
+                                               return nil
+                                       }
                                        return err
                                }