From eb5cafb4c42b45135c6df69c5f66e31192e7b608 Mon Sep 17 00:00:00 2001 From: Pi Studios Date: Mon, 11 May 2026 20:30:40 +1000 Subject: [PATCH 1/2] feat: expose PROJECT_ID and INFISICAL_PROJECT_ID as env vars --- packages/cmd/dynamic_secrets.go | 10 +++++----- packages/cmd/export.go | 2 +- packages/cmd/folder.go | 6 +++--- packages/cmd/run.go | 2 +- packages/cmd/secrets.go | 10 +++++----- packages/cmd/ssh.go | 2 +- packages/cmd/tokens.go | 2 +- packages/util/constants.go | 1 + 8 files changed, 18 insertions(+), 17 deletions(-) diff --git a/packages/cmd/dynamic_secrets.go b/packages/cmd/dynamic_secrets.go index 542f98f3..fea5bd5e 100644 --- a/packages/cmd/dynamic_secrets.go +++ b/packages/cmd/dynamic_secrets.go @@ -43,7 +43,7 @@ func getDynamicSecretList(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -171,7 +171,7 @@ func createDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -342,7 +342,7 @@ func renewDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -477,7 +477,7 @@ func revokeDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -605,7 +605,7 @@ func listDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/export.go b/packages/cmd/export.go index a23dd430..d928ebfc 100644 --- a/packages/cmd/export.go +++ b/packages/cmd/export.go @@ -52,7 +52,7 @@ var exportCmd = &cobra.Command{ util.HandleError(err) } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err) } diff --git a/packages/cmd/folder.go b/packages/cmd/folder.go index bd114759..6338a34f 100644 --- a/packages/cmd/folder.go +++ b/packages/cmd/folder.go @@ -33,7 +33,7 @@ var getCmd = &cobra.Command{ } } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -110,7 +110,7 @@ var createCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -202,7 +202,7 @@ var deleteCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/run.go b/packages/cmd/run.go index a011a4b6..5356d9e0 100644 --- a/packages/cmd/run.go +++ b/packages/cmd/run.go @@ -77,7 +77,7 @@ var runCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/secrets.go b/packages/cmd/secrets.go index 904db0d8..d59de30d 100644 --- a/packages/cmd/secrets.go +++ b/packages/cmd/secrets.go @@ -38,7 +38,7 @@ var secretsCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -191,7 +191,7 @@ var secretsSetCmd = &cobra.Command{ } } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -341,7 +341,7 @@ var secretsDeleteCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -454,7 +454,7 @@ func getSecretsByNames(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -597,7 +597,7 @@ func generateExampleEnv(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/ssh.go b/packages/cmd/ssh.go index 8a7c40c6..20f91ce8 100644 --- a/packages/cmd/ssh.go +++ b/packages/cmd/ssh.go @@ -884,7 +884,7 @@ func sshAddHost(cmd *cobra.Command, args []string) { infisicalToken = loggedInUserDetails.UserCredentials.JTWToken } - projectId, err := cmd.Flags().GetString("projectId") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse --projectId flag") } diff --git a/packages/cmd/tokens.go b/packages/cmd/tokens.go index 28b54ba0..f7bfdd5c 100644 --- a/packages/cmd/tokens.go +++ b/packages/cmd/tokens.go @@ -53,7 +53,7 @@ var tokensCreateCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - workspaceId, err := cmd.Flags().GetString("projectId") + workspaceId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/util/constants.go b/packages/util/constants.go index 1ce6c850..4bf0c9e7 100644 --- a/packages/util/constants.go +++ b/packages/util/constants.go @@ -7,6 +7,7 @@ const ( INFISICAL_DEFAULT_EU_URL = "https://eu.infisical.com" INFISICAL_WORKSPACE_CONFIG_FILE_NAME = ".infisical.json" INFISICAL_TOKEN_NAME = "INFISICAL_TOKEN" + INFISICAL_PROJECT_ID_NAME = "INFISICAL_PROJECT_ID" INFISICAL_UNIVERSAL_AUTH_ACCESS_TOKEN_NAME = "INFISICAL_UNIVERSAL_AUTH_ACCESS_TOKEN" INFISICAL_VAULT_FILE_PASSPHRASE_ENV_NAME = "INFISICAL_VAULT_FILE_PASSPHRASE" // This works because we've forked the keyring package and added support for this env variable. This explains why you won't find any occurrences of it in the CLI codebase. From 4ee1572ebef9361a0c7f7746885275c51b384e7c Mon Sep 17 00:00:00 2001 From: Pi Studios Date: Mon, 11 May 2026 20:36:28 +1000 Subject: [PATCH 2/2] fix: remove generic PROJECT_ID fallback to avoid collisions (identified by codex) --- packages/cmd/dynamic_secrets.go | 10 +++++----- packages/cmd/export.go | 2 +- packages/cmd/folder.go | 6 +++--- packages/cmd/run.go | 2 +- packages/cmd/secrets.go | 10 +++++----- packages/cmd/ssh.go | 2 +- packages/cmd/tokens.go | 2 +- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/cmd/dynamic_secrets.go b/packages/cmd/dynamic_secrets.go index fea5bd5e..1369031b 100644 --- a/packages/cmd/dynamic_secrets.go +++ b/packages/cmd/dynamic_secrets.go @@ -43,7 +43,7 @@ func getDynamicSecretList(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -171,7 +171,7 @@ func createDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -342,7 +342,7 @@ func renewDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -477,7 +477,7 @@ func revokeDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -605,7 +605,7 @@ func listDynamicSecretLeaseByName(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/export.go b/packages/cmd/export.go index d928ebfc..a27c5a0c 100644 --- a/packages/cmd/export.go +++ b/packages/cmd/export.go @@ -52,7 +52,7 @@ var exportCmd = &cobra.Command{ util.HandleError(err) } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err) } diff --git a/packages/cmd/folder.go b/packages/cmd/folder.go index 6338a34f..9cf00527 100644 --- a/packages/cmd/folder.go +++ b/packages/cmd/folder.go @@ -33,7 +33,7 @@ var getCmd = &cobra.Command{ } } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -110,7 +110,7 @@ var createCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -202,7 +202,7 @@ var deleteCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/run.go b/packages/cmd/run.go index 5356d9e0..1de48cd2 100644 --- a/packages/cmd/run.go +++ b/packages/cmd/run.go @@ -77,7 +77,7 @@ var runCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/secrets.go b/packages/cmd/secrets.go index d59de30d..a9655a28 100644 --- a/packages/cmd/secrets.go +++ b/packages/cmd/secrets.go @@ -38,7 +38,7 @@ var secretsCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -191,7 +191,7 @@ var secretsSetCmd = &cobra.Command{ } } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -341,7 +341,7 @@ var secretsDeleteCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -454,7 +454,7 @@ func getSecretsByNames(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } @@ -597,7 +597,7 @@ func generateExampleEnv(cmd *cobra.Command, args []string) { util.HandleError(err, "Unable to parse flag") } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") } diff --git a/packages/cmd/ssh.go b/packages/cmd/ssh.go index 20f91ce8..d2aedbdc 100644 --- a/packages/cmd/ssh.go +++ b/packages/cmd/ssh.go @@ -884,7 +884,7 @@ func sshAddHost(cmd *cobra.Command, args []string) { infisicalToken = loggedInUserDetails.UserCredentials.JTWToken } - projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + projectId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse --projectId flag") } diff --git a/packages/cmd/tokens.go b/packages/cmd/tokens.go index f7bfdd5c..5cd4f958 100644 --- a/packages/cmd/tokens.go +++ b/packages/cmd/tokens.go @@ -53,7 +53,7 @@ var tokensCreateCmd = &cobra.Command{ util.HandleError(err, "Unable to parse flag") } - workspaceId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME, "PROJECT_ID"}, "") + workspaceId, err := util.GetCmdFlagOrEnvWithDefaultValue(cmd, "projectId", []string{util.INFISICAL_PROJECT_ID_NAME}, "") if err != nil { util.HandleError(err, "Unable to parse flag") }