1 env GO111MODULE=on
2 env proxy=$GOPROXY
3 env GOPROXY=direct
4
5 # GOVCS stops go get
6 env GOVCS='*:none'
7 ! go get github.com/google/go-cmp
8 stderr '^go: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
9 env GOPRIVATE='github.com/google'
10 ! go get github.com/google/go-cmp
11 stderr '^go: GOVCS disallows using git for private github.com/google/go-cmp; see ''go help vcs''$'
12
13 # public pattern works
14 env GOPRIVATE='github.com/google'
15 env GOVCS='public:all,private:none'
16 ! go get github.com/google/go-cmp
17 stderr '^go: GOVCS disallows using git for private github.com/google/go-cmp; see ''go help vcs''$'
18
19 # private pattern works
20 env GOPRIVATE='hubgit.com/google'
21 env GOVCS='private:all,public:none'
22 ! go get github.com/google/go-cmp
23 stderr '^go: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
24
25 # other patterns work (for more patterns, see TestGOVCS)
26 env GOPRIVATE=
27 env GOVCS='github.com:svn|hg'
28 ! go get github.com/google/go-cmp
29 stderr '^go: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
30 env GOVCS='github.com/google/go-cmp/inner:git,github.com:svn|hg'
31 ! go get github.com/google/go-cmp
32 stderr '^go: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
33
34 # bad patterns are reported (for more bad patterns, see TestGOVCSErrors)
35 env GOVCS='git'
36 ! go get github.com/google/go-cmp
37 stderr '^go: github.com/google/go-cmp: malformed entry in GOVCS \(missing colon\): "git"$'
38
39 env GOVCS=github.com:hg,github.com:git
40 ! go get github.com/google/go-cmp
41 stderr '^go: github.com/google/go-cmp: unreachable pattern in GOVCS: "github.com:git" after "github.com:hg"$'
42
43 # bad GOVCS patterns do not stop commands that do not need to check VCS
44 go list
45 env GOPROXY=$proxy
46 go get rsc.io/quote # ok because used proxy
47 env GOPROXY=direct
48
49 # svn is disallowed by default
50 env GOPRIVATE=
51 env GOVCS=
52 ! go get rsc.io/nonexist.svn/hello
53 stderr '^go: rsc.io/nonexist.svn/hello: GOVCS disallows using svn for public rsc.io/nonexist.svn; see ''go help vcs''$'
54
55 # fossil is disallowed by default
56 env GOPRIVATE=
57 env GOVCS=
58 ! go get rsc.io/nonexist.fossil/hello
59 stderr '^go: rsc.io/nonexist.fossil/hello: GOVCS disallows using fossil for public rsc.io/nonexist.fossil; see ''go help vcs''$'
60
61 # bzr is disallowed by default
62 env GOPRIVATE=
63 env GOVCS=
64 ! go get rsc.io/nonexist.bzr/hello
65 stderr '^go: rsc.io/nonexist.bzr/hello: GOVCS disallows using bzr for public rsc.io/nonexist.bzr; see ''go help vcs''$'
66
67 # git is OK by default
68 env GOVCS=
69 env GONOSUMDB='*'
70 [net] [exec:git] [!short] go get rsc.io/sampler
71
72 # hg is OK by default
73 env GOVCS=
74 env GONOSUMDB='*'
75 [net] [exec:hg] [!short] go get vcs-test.golang.org/go/custom-hg-hello
76
77 # git can be disallowed
78 env GOVCS=public:hg
79 ! go get rsc.io/nonexist.git/hello
80 stderr '^go: rsc.io/nonexist.git/hello: GOVCS disallows using git for public rsc.io/nonexist.git; see ''go help vcs''$'
81
82 # hg can be disallowed
83 env GOVCS=public:git
84 ! go get rsc.io/nonexist.hg/hello
85 stderr '^go: rsc.io/nonexist.hg/hello: GOVCS disallows using hg for public rsc.io/nonexist.hg; see ''go help vcs''$'
86
87 # Repeat in GOPATH mode. Error texts slightly different.
88
89 env GO111MODULE=off
90
91 # GOVCS stops go get
92 env GOVCS='*:none'
93 ! go get github.com/google/go-cmp
94 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
95 env GOPRIVATE='github.com/google'
96 ! go get github.com/google/go-cmp
97 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for private github.com/google/go-cmp; see ''go help vcs''$'
98
99 # public pattern works
100 env GOPRIVATE='github.com/google'
101 env GOVCS='public:all,private:none'
102 ! go get github.com/google/go-cmp
103 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for private github.com/google/go-cmp; see ''go help vcs''$'
104
105 # private pattern works
106 env GOPRIVATE='hubgit.com/google'
107 env GOVCS='private:all,public:none'
108 ! go get github.com/google/go-cmp
109 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
110
111 # other patterns work (for more patterns, see TestGOVCS)
112 env GOPRIVATE=
113 env GOVCS='github.com:svn|hg'
114 ! go get github.com/google/go-cmp
115 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
116 env GOVCS='github.com/google/go-cmp/inner:git,github.com:svn|hg'
117 ! go get github.com/google/go-cmp
118 stderr '^package github.com/google/go-cmp: GOVCS disallows using git for public github.com/google/go-cmp; see ''go help vcs''$'
119
120 # bad patterns are reported (for more bad patterns, see TestGOVCSErrors)
121 env GOVCS='git'
122 ! go get github.com/google/go-cmp
123 stderr '^package github.com/google/go-cmp: malformed entry in GOVCS \(missing colon\): "git"$'
124
125 env GOVCS=github.com:hg,github.com:git
126 ! go get github.com/google/go-cmp
127 stderr '^package github.com/google/go-cmp: unreachable pattern in GOVCS: "github.com:git" after "github.com:hg"$'
128
129 # bad GOVCS patterns do not stop commands that do not need to check VCS
130 go list
131
132 # svn is disallowed by default
133 env GOPRIVATE=
134 env GOVCS=
135 ! go get rsc.io/nonexist.svn/hello
136 stderr '^package rsc.io/nonexist.svn/hello: GOVCS disallows using svn for public rsc.io/nonexist.svn; see ''go help vcs''$'
137
138 # fossil is disallowed by default
139 env GOPRIVATE=
140 env GOVCS=
141 ! go get rsc.io/nonexist.fossil/hello
142 stderr '^package rsc.io/nonexist.fossil/hello: GOVCS disallows using fossil for public rsc.io/nonexist.fossil; see ''go help vcs''$'
143
144 # bzr is disallowed by default
145 env GOPRIVATE=
146 env GOVCS=
147 ! go get rsc.io/nonexist.bzr/hello
148 stderr '^package rsc.io/nonexist.bzr/hello: GOVCS disallows using bzr for public rsc.io/nonexist.bzr; see ''go help vcs''$'
149
150 # git is OK by default
151 env GOVCS=
152 env GONOSUMDB='*'
153 [net] [exec:git] [!short] go get rsc.io/sampler
154
155 # hg is OK by default
156 env GOVCS=
157 env GONOSUMDB='*'
158 [net] [exec:hg] [!short] go get vcs-test.golang.org/go/custom-hg-hello
159
160 # git can be disallowed
161 env GOVCS=public:hg
162 ! go get rsc.io/nonexist.git/hello
163 stderr '^package rsc.io/nonexist.git/hello: GOVCS disallows using git for public rsc.io/nonexist.git; see ''go help vcs''$'
164
165 # hg can be disallowed
166 env GOVCS=public:git
167 ! go get rsc.io/nonexist.hg/hello
168 stderr '^package rsc.io/nonexist.hg/hello: GOVCS disallows using hg for public rsc.io/nonexist.hg; see ''go help vcs''$'
169
170 -- go.mod --
171 module m
172
173 -- p.go --
174 package p
175
View as plain text