in internal/dockerconfig/config.go [48:73]
func LoadCredentials(cfg credentialGetter) (File, error) {
creds, err := cfg.GetAllCredentials()
if err != nil {
return File{}, err
}
credentials := File{Auths: make(map[string]Credential)}
for k, cred := range creds {
if cred.Auth != "" {
credentials.Auths[k] = Credential{Auth: cred.Auth}
continue
}
if cred.Username == "" && cred.Password == "" {
continue
}
credentials.Auths[k] = Credential{
Auth: base64.StdEncoding.EncodeToString([]byte(
fmt.Sprintf("%s:%s", cred.Username, cred.Password),
)),
}
}
return credentials, nil
}