From 1f24d02c5e58c536e7308bc3812b5f78ad322c8b Mon Sep 17 00:00:00 2001 From: Daniel Hougaard Date: Mon, 26 Aug 2024 15:08:51 +0400 Subject: [PATCH] Fix: Do not save duplicate domains --- cli/packages/cmd/login.go | 11 +++++++---- cli/packages/util/helper.go | 9 +++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/cli/packages/cmd/login.go b/cli/packages/cmd/login.go index 33945e7e0..51b464b1f 100644 --- a/cli/packages/cmd/login.go +++ b/cli/packages/cmd/login.go @@ -604,11 +604,14 @@ func askForDomain() error { config.INFISICAL_LOGIN_URL = fmt.Sprintf("%s/login", domain) // Write the new domain to the config file, to allow the user to select it in the future if needed - infisicalConfig.Domains = append(infisicalConfig.Domains, domain) - err = util.WriteConfigFile(&infisicalConfig) + // First check if infiscialConfig.Domains already includes the domain, if it does, do not add it again + if !util.ArrayContains(infisicalConfig.Domains, domain) { + infisicalConfig.Domains = append(infisicalConfig.Domains, domain) + err = util.WriteConfigFile(&infisicalConfig) - if err != nil { - return fmt.Errorf("askForDomain: unable to write domains to config file because [err=%s]", err) + if err != nil { + return fmt.Errorf("askForDomain: unable to write domains to config file because [err=%s]", err) + } } return nil diff --git a/cli/packages/util/helper.go b/cli/packages/util/helper.go index 69a310efa..7b4e78806 100644 --- a/cli/packages/util/helper.go +++ b/cli/packages/util/helper.go @@ -298,3 +298,12 @@ func GenerateRandomString(length int) string { } return string(b) } + +func ArrayContains(arr []string, val string) bool { + for _, item := range arr { + if item == val { + return true + } + } + return false +}