in ecr-login/api/client.go [286:302]
func extractToken(token string, proxyEndpoint string) (*Auth, error) {
decodedToken, err := base64.StdEncoding.DecodeString(token)
if err != nil {
return nil, errors.Wrap(err, "invalid token")
}
parts := strings.SplitN(string(decodedToken), ":", 2)
if len(parts) < 2 {
return nil, fmt.Errorf("invalid token: expected two parts, got %d", len(parts))
}
return &Auth{
Username: parts[0],
Password: parts[1],
ProxyEndpoint: proxyEndpoint,
}, nil
}