Feat: Unify CLI auth methods

This commit is contained in:
Daniel Hougaard
2024-06-15 08:48:03 +02:00
parent afcf15df55
commit c4f9a3b31e
+18 -2
View File
@@ -172,7 +172,12 @@ func GetFoldersViaMachineIdentity(accessToken string, workspaceId string, envSlu
// CreateFolder creates a folder in Infisical // CreateFolder creates a folder in Infisical
func CreateFolder(params models.CreateFolderParameters) (models.SingleFolder, error) { func CreateFolder(params models.CreateFolderParameters) (models.SingleFolder, error) {
// If no token is provided, we will try to get the token from the current logged in user
if params.InfisicalToken == "" {
RequireLogin()
loggedInUserDetails, err := GetCurrentLoggedInUserDetails() loggedInUserDetails, err := GetCurrentLoggedInUserDetails()
if err != nil { if err != nil {
return models.SingleFolder{}, err return models.SingleFolder{}, err
} }
@@ -181,10 +186,13 @@ func CreateFolder(params models.CreateFolderParameters) (models.SingleFolder, er
PrintErrorMessageAndExit("Your login session has expired, please run [infisical login] and try again") PrintErrorMessageAndExit("Your login session has expired, please run [infisical login] and try again")
} }
params.InfisicalToken = loggedInUserDetails.UserCredentials.JTWToken
}
// set up resty client // set up resty client
httpClient := resty.New() httpClient := resty.New()
httpClient. httpClient.
SetAuthToken(loggedInUserDetails.UserCredentials.JTWToken). SetAuthToken(params.InfisicalToken).
SetHeader("Accept", "application/json"). SetHeader("Accept", "application/json").
SetHeader("Content-Type", "application/json") SetHeader("Content-Type", "application/json")
@@ -209,7 +217,12 @@ func CreateFolder(params models.CreateFolderParameters) (models.SingleFolder, er
} }
func DeleteFolder(params models.DeleteFolderParameters) ([]models.SingleFolder, error) { func DeleteFolder(params models.DeleteFolderParameters) ([]models.SingleFolder, error) {
// If no token is provided, we will try to get the token from the current logged in user
if params.InfisicalToken == "" {
RequireLogin()
loggedInUserDetails, err := GetCurrentLoggedInUserDetails() loggedInUserDetails, err := GetCurrentLoggedInUserDetails()
if err != nil { if err != nil {
return nil, err return nil, err
} }
@@ -218,10 +231,13 @@ func DeleteFolder(params models.DeleteFolderParameters) ([]models.SingleFolder,
PrintErrorMessageAndExit("Your login session has expired, please run [infisical login] and try again") PrintErrorMessageAndExit("Your login session has expired, please run [infisical login] and try again")
} }
params.InfisicalToken = loggedInUserDetails.UserCredentials.JTWToken
}
// set up resty client // set up resty client
httpClient := resty.New() httpClient := resty.New()
httpClient. httpClient.
SetAuthToken(loggedInUserDetails.UserCredentials.JTWToken). SetAuthToken(params.InfisicalToken).
SetHeader("Accept", "application/json"). SetHeader("Accept", "application/json").
SetHeader("Content-Type", "application/json") SetHeader("Content-Type", "application/json")