fix(secret-reference): fixed undefined if value not found

This commit is contained in:
Akhil Mohan
2024-01-10 11:45:46 +05:30
parent 766f301aea
commit 7324822be5
+16 -8
View File
@@ -579,7 +579,9 @@ export const getSecretsHelper = async ({
event: "secrets pulled", event: "secrets pulled",
distinctId: await TelemetryService.getDistinctId({ authData }), distinctId: await TelemetryService.getDistinctId({ authData }),
properties: { properties: {
numberOfSecrets: shouldRecordK8Event ? approximateForNoneCapturedEvents : secrets.length, numberOfSecrets: shouldRecordK8Event
? approximateForNoneCapturedEvents
: secrets.length,
environment, environment,
workspaceId, workspaceId,
folderId, folderId,
@@ -614,7 +616,6 @@ export const getSecretHelper = async ({
include_imports = true, include_imports = true,
version version
}: GetSecretParams) => { }: GetSecretParams) => {
const secretBlindIndex = await generateSecretBlindIndexHelper({ const secretBlindIndex = await generateSecretBlindIndexHelper({
secretName, secretName,
workspaceId: new Types.ObjectId(workspaceId) workspaceId: new Types.ObjectId(workspaceId)
@@ -644,7 +645,7 @@ export const getSecretHelper = async ({
type: type ?? SECRET_PERSONAL, type: type ?? SECRET_PERSONAL,
version version
}).lean(); }).lean();
if (secretVersion) { if (secretVersion) {
secret = await new Secret({ secret = await new Secret({
...secretVersion, ...secretVersion,
@@ -673,7 +674,7 @@ export const getSecretHelper = async ({
type: SECRET_SHARED, type: SECRET_SHARED,
version version
}).lean(); }).lean();
if (secretVersion) { if (secretVersion) {
secret = await new Secret({ secret = await new Secret({
...secretVersion, ...secretVersion,
@@ -682,10 +683,16 @@ export const getSecretHelper = async ({
} }
} }
} }
if (!secret && include_imports) { if (!secret && include_imports) {
// if still no secret found search in imported secret and retreive // if still no secret found search in imported secret and retreive
secret = await getAnImportedSecret(secretName, workspaceId.toString(), environment, folderId, version); secret = await getAnImportedSecret(
secretName,
workspaceId.toString(),
environment,
folderId,
version
);
} }
if (!secret) throw SecretNotFoundError(); if (!secret) throw SecretNotFoundError();
@@ -1180,11 +1187,12 @@ const recursivelyExpandSecret = async (
const secRefKey = entities[entities.length - 1]; const secRefKey = entities[entities.length - 1];
const val = await fetchCrossEnv(secRefEnv, secRefPath, secRefKey); const val = await fetchCrossEnv(secRefEnv, secRefPath, secRefKey);
interpolatedValue = interpolatedValue.replaceAll(interpolationSyntax, val); if (val !== undefined) {
interpolatedValue = interpolatedValue.replaceAll(interpolationSyntax, val);
}
} }
} }
} }
expandedSec[key] = interpolatedValue; expandedSec[key] = interpolatedValue;
return interpolatedValue; return interpolatedValue;
}; };