mirror of
https://github.com/kubernetes/client-go.git
synced 2025-07-10 21:54:01 +00:00
Azure auth forwarding adal refresh error to tokenSource, fixes error when token refresh fails.
Signed-off-by: Ping He <tdihp@hotmail.com> Kubernetes-commit: e105611d3a732a5b7bf34cf48f60b5a785181e6f
This commit is contained in:
parent
caa2ddeb89
commit
88929e8a2b
@ -354,7 +354,6 @@ func (ts *azureTokenSource) Refresh(token *azureToken) (*azureToken, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// refresh outdated token with adal.
|
// refresh outdated token with adal.
|
||||||
// adal.RefreshTokenError will be returned if error occur during refreshing.
|
|
||||||
func (ts *azureTokenSourceDeviceCode) Refresh(token *azureToken) (*azureToken, error) {
|
func (ts *azureTokenSourceDeviceCode) Refresh(token *azureToken) (*azureToken, error) {
|
||||||
env, err := azure.EnvironmentFromName(token.environment)
|
env, err := azure.EnvironmentFromName(token.environment)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -388,7 +387,8 @@ func (ts *azureTokenSourceDeviceCode) Refresh(token *azureToken) (*azureToken, e
|
|||||||
}
|
}
|
||||||
|
|
||||||
if err := spt.Refresh(); err != nil {
|
if err := spt.Refresh(); err != nil {
|
||||||
return nil, fmt.Errorf("refreshing token: %v", err)
|
// Caller expects IsTokenRefreshError(err) to trigger prompt.
|
||||||
|
return nil, fmt.Errorf("refreshing token: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
return &azureToken{
|
return &azureToken{
|
||||||
|
@ -330,6 +330,16 @@ func TestAzureTokenSourceScenarios(t *testing.T) {
|
|||||||
tokenCalls: 1,
|
tokenCalls: 1,
|
||||||
persistCalls: 1,
|
persistCalls: 1,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "extend failure with fmt.Errorf nested tokenRefreshError",
|
||||||
|
configToken: expiredToken,
|
||||||
|
refreshErr: fmt.Errorf("refreshing token: %w", fakeTokenRefreshError{message: "nested FakeError happened when refreshing"}),
|
||||||
|
sourceToken: fakeToken,
|
||||||
|
expectToken: fakeToken,
|
||||||
|
refreshCalls: 1,
|
||||||
|
tokenCalls: 1,
|
||||||
|
persistCalls: 1,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "unexpected error when extend",
|
name: "unexpected error when extend",
|
||||||
configToken: expiredToken,
|
configToken: expiredToken,
|
||||||
|
Loading…
Reference in New Issue
Block a user