From eca4a72c8cefe33dbffe1c15db88972f08d121be Mon Sep 17 00:00:00 2001 From: Chad Roberts Date: Sat, 7 Sep 2024 09:50:06 -0400 Subject: [PATCH] Ensure that localProvider is always the 0th provider listed in the provider selection prompt. (#389) --- cmd/kubectl_token.go | 7 ++++++- cmd/kubectl_token_test.go | 10 +++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/cmd/kubectl_token.go b/cmd/kubectl_token.go index 596108e..dfd8ece 100644 --- a/cmd/kubectl_token.go +++ b/cmd/kubectl_token.go @@ -558,7 +558,12 @@ func getAuthProviders(server string) ([]TypedProvider, error) { if err != nil { return nil, fmt.Errorf("attempting to decode the auth provider of type %s: %w", providerType, err) } - supportedProviders = append(supportedProviders, typedProvider) + + if typedProvider.GetType() == "localProvider" { + supportedProviders = append([]TypedProvider{typedProvider}, supportedProviders...) + } else { + supportedProviders = append(supportedProviders, typedProvider) + } } } diff --git a/cmd/kubectl_token_test.go b/cmd/kubectl_token_test.go index 96a29cd..1f8a28e 100644 --- a/cmd/kubectl_token_test.go +++ b/cmd/kubectl_token_test.go @@ -28,6 +28,11 @@ func Test_getAuthProviders(t *testing.T) { name: "response ok", server: setupServer(responseOK), expectedProviders: []TypedProvider{ + &apiv3.LocalProvider{ + AuthProvider: apiv3.AuthProvider{ + Type: "localProvider", + }, + }, &apiv3.AzureADProvider{ AuthProvider: apiv3.AuthProvider{ Type: "azureADProvider", @@ -44,11 +49,6 @@ func Test_getAuthProviders(t *testing.T) { }, }, }, - &apiv3.LocalProvider{ - AuthProvider: apiv3.AuthProvider{ - Type: "localProvider", - }, - }, }, }, {