mirror of
https://github.com/golang/go
synced 2024-10-05 01:31:22 -06:00
cmd/go: accept go get domain.root
Fixes #9357. Change-Id: I11f0652758c4ea80debec29c3b99a72baca6d745 Reviewed-on: https://go-review.googlesource.com/12193 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
af96030150
commit
2f54de0df8
@ -2133,6 +2133,7 @@ func TestGoGetUpdate(t *testing.T) {
|
||||
// golang.org/issue/9224.
|
||||
// The recursive updating was trying to walk to
|
||||
// former dependencies, not current ones.
|
||||
|
||||
testenv.MustHaveExternalNetwork(t)
|
||||
|
||||
tg := testgo(t)
|
||||
@ -2157,3 +2158,29 @@ func TestGoGetUpdate(t *testing.T) {
|
||||
rewind()
|
||||
tg.run("get", "-d", "-u", "github.com/rsc/go-get-issue-9224-cmd")
|
||||
}
|
||||
|
||||
func TestGoGetDomainRoot(t *testing.T) {
|
||||
// golang.org/issue/9357.
|
||||
// go get foo.io (not foo.io/subdir) was not working consistently.
|
||||
|
||||
testenv.MustHaveExternalNetwork(t)
|
||||
|
||||
tg := testgo(t)
|
||||
defer tg.cleanup()
|
||||
tg.makeTempdir()
|
||||
tg.setenv("GOPATH", tg.path("."))
|
||||
|
||||
// go-get-issue-9357.appspot.com is running
|
||||
// the code at github.com/rsc/go-get-issue-9357,
|
||||
// a trivial Go on App Engine app that serves a
|
||||
// <meta> tag for the domain root.
|
||||
tg.run("get", "-d", "go-get-issue-9357.appspot.com")
|
||||
tg.run("get", "go-get-issue-9357.appspot.com")
|
||||
tg.run("get", "-u", "go-get-issue-9357.appspot.com")
|
||||
|
||||
tg.must(os.RemoveAll(tg.path("src/go-get-issue-9357.appspot.com")))
|
||||
tg.run("get", "go-get-issue-9357.appspot.com")
|
||||
|
||||
tg.must(os.RemoveAll(tg.path("src/go-get-issue-9357.appspot.com")))
|
||||
tg.run("get", "-u", "go-get-issue-9357.appspot.com")
|
||||
}
|
||||
|
@ -650,11 +650,11 @@ func repoRootForImportPathStatic(importPath, scheme string, security securityMod
|
||||
// repoRootForImportDynamic finds a *repoRoot for a custom domain that's not
|
||||
// statically known by repoRootForImportPathStatic.
|
||||
//
|
||||
// This handles custom import paths like "name.tld/pkg/foo".
|
||||
// This handles custom import paths like "name.tld/pkg/foo" or just "name.tld".
|
||||
func repoRootForImportDynamic(importPath string, security securityMode) (*repoRoot, error) {
|
||||
slash := strings.Index(importPath, "/")
|
||||
if slash < 0 {
|
||||
return nil, errors.New("import path does not contain a slash")
|
||||
slash = len(importPath)
|
||||
}
|
||||
host := importPath[:slash]
|
||||
if !strings.Contains(host, ".") {
|
||||
|
Loading…
Reference in New Issue
Block a user