Skip to content

Commit

Permalink
run.bash: set GOPATH to $GOROOT/nil before running tests
Browse files Browse the repository at this point in the history
Set $GOPATH to a semantically valid, non-empty string that cannot
conflict with $GOROOT to avoid false test failures that occur when
$GOROOT resides under $GOPATH.  Unsetting GOPATH is no longer viable
as Go now defines a default $GOPATH that may conflict with $GOROOT.

Fixes #19237

Change-Id: I376a2ad3b18e9c4098211b988dde7e76bc4725d2
Reviewed-on: https://go-review.googlesource.com/37396
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
  • Loading branch information
Sean Christopherson authored and ianlancetaylor committed Feb 24, 2017
1 parent 1564817 commit 2a0d7e2
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions src/run.bash
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,17 @@ set -e
eval $(go env)
export GOROOT # the api test requires GOROOT to be set.

# We disallow local import for non-local packages, if $GOROOT happens
# to be under $GOPATH, then some tests below will fail. $GOPATH needs
# to be set to a non-empty string, else Go will set a default value
# that may also conflict with $GOROOT. The $GOPATH value doesn't need
# to point to an actual directory, it just needs to pass the semantic
# checks performed by Go. Use $GOROOT to define $GOPATH so that we
# don't blunder into a user-defined symbolic link.
GOPATH=$GOROOT/nonexistentpath
export GOPATH

unset CDPATH # in case user has it set
unset GOPATH # we disallow local import for non-local packages, if $GOROOT happens
# to be under $GOPATH, then some tests below will fail
unset GOBIN # Issue 14340

export GOHOSTOS
Expand Down

0 comments on commit 2a0d7e2

Please sign in to comment.