fix: support empty auth config for anonymous registry

- empty username means caller wants to use no credentials, typically for anonymous registry
- Fixes https://github.com/containerd/cri/issues/1249

Signed-off-by: Nishchay Kumar <mrawesomenix@gmail.com>
This commit is contained in:
Nishchay 2019-08-28 09:07:33 -07:00 committed by Nishchay Kumar
parent 6dc2a87447
commit f41675d234
No known key found for this signature in database
GPG Key ID: 5C6C9E114AE907E8
2 changed files with 4 additions and 3 deletions

View File

@ -187,7 +187,8 @@ func ParseAuth(auth *runtime.AuthConfig, host string) (string, string, error) {
return user, strings.Trim(passwd, "\x00"), nil
}
// TODO(random-liu): Support RegistryToken.
return "", "", errors.New("invalid auth config")
// An empty auth config is valid for anonymous registry
return "", "", nil
}
// createImageReference creates image reference inside containerd image store.

View File

@ -42,9 +42,9 @@ func TestParseAuth(t *testing.T) {
expectErr bool
}{
"should not return error if auth config is nil": {},
"should return error if no supported auth is provided": {
"should not return error if empty auth is provided for access to anonymous registry": {
auth: &runtime.AuthConfig{},
expectErr: true,
expectErr: false,
},
"should support identity token": {
auth: &runtime.AuthConfig{IdentityToken: "abcd"},