From 5d2183bd48ccb252458805cb489dbf9f51dfcc24 Mon Sep 17 00:00:00 2001 From: andreasvikke Date: Thu, 13 Aug 2026 11:33:14 +0200 Subject: [PATCH 1/2] feat: add JFROG_CLI_CERTS_DIR env support Allow overriding JFrog CLI certificates directory --- utils/coreutils/coreconsts.go | 1 + utils/coreutils/utils.go | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/utils/coreutils/coreconsts.go b/utils/coreutils/coreconsts.go index ad13dae05..33f74e697 100644 --- a/utils/coreutils/coreconsts.go +++ b/utils/coreutils/coreconsts.go @@ -74,6 +74,7 @@ var ( ApplicationKey = "JFROG_CLI_APPLICATION_KEY" SigningKey = "JFROG_CLI_SIGNING_KEY" KeyAlias = "JFROG_CLI_KEY_ALIAS" + CertsDir = "JFROG_CLI_CERTS_DIR" //#nosec G101 EncryptionKey = "JFROG_CLI_ENCRYPTION_KEY" // For CI runs diff --git a/utils/coreutils/utils.go b/utils/coreutils/utils.go index 6679bdb5a..d0edb6a2e 100644 --- a/utils/coreutils/utils.go +++ b/utils/coreutils/utils.go @@ -341,6 +341,10 @@ func GetJfrogSecurityDir() (string, error) { } func GetJfrogCertsDir() (string, error) { + if os.Getenv(CertsDir) != "" { + return os.Getenv(CertsDir), nil + } + securityDir, err := GetJfrogSecurityDir() if err != nil { return "", err From 83e8218e402482cf5cc27f118e85304d39b41fd7 Mon Sep 17 00:00:00 2001 From: andreasvikke Date: Thu, 13 Aug 2026 11:33:21 +0200 Subject: [PATCH 2/2] chore: add unit test for jfrog cli certs dir --- utils/coreutils/utils_test.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/utils/coreutils/utils_test.go b/utils/coreutils/utils_test.go index 8ddffbee4..c74e97511 100644 --- a/utils/coreutils/utils_test.go +++ b/utils/coreutils/utils_test.go @@ -279,3 +279,21 @@ func TestGetMaskedCommandString(t *testing.T) { "pip -i ***@someurl.com/repo --access-token=***", GetMaskedCommandString(exec.Command("pip", "-i", "https://user:pass@someurl.com/repo", "--access-token=123"))) } + +func TestGetJfrogCertsDirFromEnv(t *testing.T) { + t.Setenv("JFROG_CLI_CERTS_DIR", "/custom/certs") + + certsDir, err := GetJfrogCertsDir() + + assert.NoError(t, err) + assert.Equal(t, "/custom/certs", certsDir) +} + +func TestGetJfrogCertsDirFallsBackToHomeDir(t *testing.T) { + t.Setenv("JFROG_CLI_HOME_DIR", "/tmp/jfrog") + + certsDir, err := GetJfrogCertsDir() + + assert.NoError(t, err) + assert.Equal(t, "/tmp/jfrog/security/certs", certsDir) +}