registry: allow mirror path prefix in config
Path prefixes were originally disallowed in the `--registry-mirrors` option because the /v1 endpoint was assumed to be at the root of the URI. This is no longer the case in v2. Close #36598 Signed-off-by: Régis Behmo <regis@behmo.com>
This commit is contained in:
parent
bc2c8279de
commit
c587ba3422
2 changed files with 5 additions and 5 deletions
|
@ -330,8 +330,8 @@ func ValidateMirror(val string) (string, error) {
|
|||
if uri.Scheme != "http" && uri.Scheme != "https" {
|
||||
return "", invalidParamf("invalid mirror: unsupported scheme %q in %q", uri.Scheme, uri)
|
||||
}
|
||||
if (uri.Path != "" && uri.Path != "/") || uri.RawQuery != "" || uri.Fragment != "" {
|
||||
return "", invalidParamf("invalid mirror: path, query, or fragment at end of the URI %q", uri)
|
||||
if uri.RawQuery != "" || uri.Fragment != "" {
|
||||
return "", invalidParamf("invalid mirror: query or fragment at end of the URI %q", uri)
|
||||
}
|
||||
if uri.User != nil {
|
||||
// strip password from output
|
||||
|
|
|
@ -142,21 +142,21 @@ func TestValidateMirror(t *testing.T) {
|
|||
"https://127.0.0.1",
|
||||
"http://127.0.0.1:5000",
|
||||
"https://127.0.0.1:5000",
|
||||
"http://mirror-1.example.com/v1/",
|
||||
"https://mirror-1.example.com/v1/",
|
||||
}
|
||||
|
||||
invalid := []string{
|
||||
"!invalid!://%as%",
|
||||
"ftp://mirror-1.example.com",
|
||||
"http://mirror-1.example.com/?q=foo",
|
||||
"http://mirror-1.example.com/v1/",
|
||||
"http://mirror-1.example.com/v1/?q=foo",
|
||||
"http://mirror-1.example.com/v1/?q=foo#frag",
|
||||
"http://mirror-1.example.com?q=foo",
|
||||
"https://mirror-1.example.com#frag",
|
||||
"https://mirror-1.example.com/#frag",
|
||||
"http://foo:bar@mirror-1.example.com/",
|
||||
"https://mirror-1.example.com/v1/",
|
||||
"https://mirror-1.example.com/v1/#",
|
||||
"https://mirror-1.example.com/v1/#frag",
|
||||
"https://mirror-1.example.com?q",
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue