mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-05 10:26:35 +00:00
Revert "feature: added offline support for infisical export"
This reverts commit 88a4fb84e6.
This commit is contained in:
+31
-54
@@ -93,33 +93,10 @@ var exportCmd = &cobra.Command{
|
|||||||
IncludeImport: includeImports,
|
IncludeImport: includeImports,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var secrets []models.SingleEnvironmentVariable
|
|
||||||
var isUserSession bool
|
|
||||||
var infisicalDotJson models.WorkspaceConfigFile
|
|
||||||
var userBackupSecretsEncryptionKey []byte
|
|
||||||
var loggedInUserDetails util.LoggedInUserDetails
|
|
||||||
|
|
||||||
if token != nil && token.Type == util.SERVICE_TOKEN_IDENTIFIER {
|
if token != nil && token.Type == util.SERVICE_TOKEN_IDENTIFIER {
|
||||||
request.InfisicalToken = token.Token
|
request.InfisicalToken = token.Token
|
||||||
} else if token != nil && token.Type == util.UNIVERSAL_AUTH_TOKEN_IDENTIFIER {
|
} else if token != nil && token.Type == util.UNIVERSAL_AUTH_TOKEN_IDENTIFIER {
|
||||||
request.UniversalAuthAccessToken = token.Token
|
request.UniversalAuthAccessToken = token.Token
|
||||||
} else {
|
|
||||||
isUserSession = true
|
|
||||||
loggedInUserDetails, err = util.GetCurrentLoggedInUserDetails()
|
|
||||||
if err != nil {
|
|
||||||
util.HandleError(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
projectConfig, err := util.GetWorkSpaceFromFile()
|
|
||||||
if err != nil {
|
|
||||||
util.HandleError(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
infisicalDotJson = projectConfig
|
|
||||||
|
|
||||||
userBackupSecretsEncryptionKey = []byte(loggedInUserDetails.UserCredentials.PrivateKey)[0:32]
|
|
||||||
secrets = util.GetBackupSecretsIfDisconnected(infisicalDotJson.WorkspaceId, environmentName, userBackupSecretsEncryptionKey)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if templatePath != "" {
|
if templatePath != "" {
|
||||||
@@ -132,6 +109,10 @@ var exportCmd = &cobra.Command{
|
|||||||
accessToken = token.Token
|
accessToken = token.Token
|
||||||
} else {
|
} else {
|
||||||
log.Debug().Msg("GetAllEnvironmentVariables: Trying to fetch secrets using logged in details")
|
log.Debug().Msg("GetAllEnvironmentVariables: Trying to fetch secrets using logged in details")
|
||||||
|
loggedInUserDetails, err := util.GetCurrentLoggedInUserDetails()
|
||||||
|
if err != nil {
|
||||||
|
util.HandleError(err)
|
||||||
|
}
|
||||||
accessToken = loggedInUserDetails.UserCredentials.JTWToken
|
accessToken = loggedInUserDetails.UserCredentials.JTWToken
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,44 +124,40 @@ var exportCmd = &cobra.Command{
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(secrets) == 0 {
|
secrets, err := util.GetAllEnvironmentVariables(request, "")
|
||||||
secrets, err = util.GetAllEnvironmentVariables(request, "")
|
if err != nil {
|
||||||
if err != nil {
|
util.HandleError(err, "Unable to fetch secrets")
|
||||||
util.HandleError(err, "Unable to fetch secrets")
|
|
||||||
}
|
|
||||||
|
|
||||||
if secretOverriding {
|
|
||||||
secrets = util.OverrideSecrets(secrets, util.SECRET_TYPE_PERSONAL)
|
|
||||||
} else {
|
|
||||||
secrets = util.OverrideSecrets(secrets, util.SECRET_TYPE_SHARED)
|
|
||||||
}
|
|
||||||
|
|
||||||
if shouldExpandSecrets {
|
|
||||||
|
|
||||||
authParams := models.ExpandSecretsAuthentication{}
|
|
||||||
|
|
||||||
if token != nil && token.Type == util.SERVICE_TOKEN_IDENTIFIER {
|
|
||||||
authParams.InfisicalToken = token.Token
|
|
||||||
} else if token != nil && token.Type == util.UNIVERSAL_AUTH_TOKEN_IDENTIFIER {
|
|
||||||
authParams.UniversalAuthAccessToken = token.Token
|
|
||||||
}
|
|
||||||
|
|
||||||
secrets = util.ExpandSecrets(secrets, authParams, "")
|
|
||||||
}
|
|
||||||
secrets = util.FilterSecretsByTag(secrets, tagSlugs)
|
|
||||||
secrets = util.SortSecretsByKeys(secrets)
|
|
||||||
|
|
||||||
if isUserSession {
|
|
||||||
util.WriteBackupSecrets(infisicalDotJson.WorkspaceId, environmentName, userBackupSecretsEncryptionKey, secrets)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
output, err := formatEnvs(secrets, format)
|
if secretOverriding {
|
||||||
|
secrets = util.OverrideSecrets(secrets, util.SECRET_TYPE_PERSONAL)
|
||||||
|
} else {
|
||||||
|
secrets = util.OverrideSecrets(secrets, util.SECRET_TYPE_SHARED)
|
||||||
|
}
|
||||||
|
|
||||||
|
var output string
|
||||||
|
if shouldExpandSecrets {
|
||||||
|
|
||||||
|
authParams := models.ExpandSecretsAuthentication{}
|
||||||
|
|
||||||
|
if token != nil && token.Type == util.SERVICE_TOKEN_IDENTIFIER {
|
||||||
|
authParams.InfisicalToken = token.Token
|
||||||
|
} else if token != nil && token.Type == util.UNIVERSAL_AUTH_TOKEN_IDENTIFIER {
|
||||||
|
authParams.UniversalAuthAccessToken = token.Token
|
||||||
|
}
|
||||||
|
|
||||||
|
secrets = util.ExpandSecrets(secrets, authParams, "")
|
||||||
|
}
|
||||||
|
secrets = util.FilterSecretsByTag(secrets, tagSlugs)
|
||||||
|
secrets = util.SortSecretsByKeys(secrets)
|
||||||
|
|
||||||
|
output, err = formatEnvs(secrets, format)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
util.HandleError(err)
|
util.HandleError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Print(output)
|
fmt.Print(output)
|
||||||
|
|
||||||
// Telemetry.CaptureEvent("cli-command:export", posthog.NewProperties().Set("secretsCount", len(secrets)).Set("version", util.CLI_VERSION))
|
// Telemetry.CaptureEvent("cli-command:export", posthog.NewProperties().Set("secretsCount", len(secrets)).Set("version", util.CLI_VERSION))
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -105,6 +105,8 @@ var secretsCmd = &cobra.Command{
|
|||||||
util.HandleError(err)
|
util.HandleError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
isConnected := util.CheckIsConnectedToInfisicalAPI()
|
||||||
|
|
||||||
projectConfig, err := util.GetWorkSpaceFromFile()
|
projectConfig, err := util.GetWorkSpaceFromFile()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
util.HandleError(err)
|
util.HandleError(err)
|
||||||
@@ -112,7 +114,16 @@ var secretsCmd = &cobra.Command{
|
|||||||
|
|
||||||
infisicalDotJson = projectConfig
|
infisicalDotJson = projectConfig
|
||||||
userBackupSecretsEncryptionKey = []byte(loggedInUserDetails.UserCredentials.PrivateKey)[0:32]
|
userBackupSecretsEncryptionKey = []byte(loggedInUserDetails.UserCredentials.PrivateKey)[0:32]
|
||||||
secrets = util.GetBackupSecretsIfDisconnected(infisicalDotJson.WorkspaceId, environmentName, userBackupSecretsEncryptionKey)
|
|
||||||
|
if !isConnected {
|
||||||
|
secrets, err = util.ReadBackupSecrets(infisicalDotJson.WorkspaceId, environmentName, userBackupSecretsEncryptionKey)
|
||||||
|
if err != nil {
|
||||||
|
util.HandleError(err)
|
||||||
|
}
|
||||||
|
if len(secrets) > 0 {
|
||||||
|
util.PrintWarning("Unable to fetch latest secret(s) due to connection error, serving secrets from last successful fetch. For more info, run with --debug")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(secrets) == 0 {
|
if len(secrets) == 0 {
|
||||||
|
|||||||
@@ -426,24 +426,6 @@ func getSecretsByKeys(secrets []models.SingleEnvironmentVariable) map[string]mod
|
|||||||
return secretMapByName
|
return secretMapByName
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetBackupSecretsIfDisconnected(workspaceId string, environment string, encryptionKey []byte) ([]models.SingleEnvironmentVariable) {
|
|
||||||
isConnected := CheckIsConnectedToInfisicalAPI()
|
|
||||||
|
|
||||||
if !isConnected {
|
|
||||||
secrets, err := ReadBackupSecrets(workspaceId, environment, encryptionKey)
|
|
||||||
if err != nil {
|
|
||||||
HandleError(err)
|
|
||||||
}
|
|
||||||
if len(secrets) > 0 {
|
|
||||||
PrintWarning("Unable to fetch latest secret(s) due to connection error, serving secrets from last successful fetch. For more info, run with --debug")
|
|
||||||
}
|
|
||||||
|
|
||||||
return secrets
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func ExpandSecrets(secrets []models.SingleEnvironmentVariable, auth models.ExpandSecretsAuthentication, projectConfigPathDir string) []models.SingleEnvironmentVariable {
|
func ExpandSecrets(secrets []models.SingleEnvironmentVariable, auth models.ExpandSecretsAuthentication, projectConfigPathDir string) []models.SingleEnvironmentVariable {
|
||||||
expandedSecs := make(map[string]string)
|
expandedSecs := make(map[string]string)
|
||||||
interpolatedSecs := make(map[string]string)
|
interpolatedSecs := make(map[string]string)
|
||||||
|
|||||||
Reference in New Issue
Block a user