Fix registry auth by storing the string passed on the command line, and allowing for credential selection by normalizing on hostname. Also, remove remote ping calls from CmdPush and CmdPull.
Docker-DCO-1.1-Signed-off-by: Jake Moshenko <jake@devtable.com> (github: jakedt)
This commit is contained in:
parent
d2d6c2381d
commit
bac83c7608
2 changed files with 4 additions and 7 deletions
|
@ -91,7 +91,7 @@ func validateRepositoryName(repositoryName string) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Resolves a repository name to a endpoint + name
|
// Resolves a repository name to a hostname + name
|
||||||
func ResolveRepositoryName(reposName string) (string, string, error) {
|
func ResolveRepositoryName(reposName string) (string, string, error) {
|
||||||
if strings.Contains(reposName, "://") {
|
if strings.Contains(reposName, "://") {
|
||||||
// It cannot contain a scheme!
|
// It cannot contain a scheme!
|
||||||
|
@ -117,11 +117,8 @@ func ResolveRepositoryName(reposName string) (string, string, error) {
|
||||||
if err := validateRepositoryName(reposName); err != nil {
|
if err := validateRepositoryName(reposName); err != nil {
|
||||||
return "", "", err
|
return "", "", err
|
||||||
}
|
}
|
||||||
endpoint, err := ExpandAndVerifyRegistryUrl(hostname)
|
|
||||||
if err != nil {
|
return hostname, reposName, nil
|
||||||
return "", "", err
|
|
||||||
}
|
|
||||||
return endpoint, reposName, err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// this method expands the registry name as used in the prefix of a repo
|
// this method expands the registry name as used in the prefix of a repo
|
||||||
|
|
|
@ -145,7 +145,7 @@ func TestResolveRepositoryName(t *testing.T) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
assertEqual(t, ep, "http://"+u+"/v1/", "Expected endpoint to be "+u)
|
assertEqual(t, ep, u, "Expected endpoint to be "+u)
|
||||||
assertEqual(t, repo, "private/moonbase", "Expected endpoint to be private/moonbase")
|
assertEqual(t, repo, "private/moonbase", "Expected endpoint to be private/moonbase")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue