mirror of
https://github.com/Infisical/infisical.git
synced 2025-04-02 14:38:48 +00:00
feat: resolved failing testcases
This commit is contained in:
@ -40,8 +40,8 @@
|
||||
"type:check": "tsc --noEmit",
|
||||
"lint:fix": "eslint --fix --ext js,ts ./src",
|
||||
"lint": "eslint 'src/**/*.ts'",
|
||||
"test:e2e": "vitest run -c vitest.e2e.config.ts",
|
||||
"test:e2e-watch": "vitest -c vitest.e2e.config.ts",
|
||||
"test:e2e": "vitest run -c vitest.e2e.config.ts --bail=1",
|
||||
"test:e2e-watch": "vitest -c vitest.e2e.config.ts --bail=<value>",
|
||||
"test:e2e-coverage": "vitest run --coverage -c vitest.e2e.config.ts",
|
||||
"generate:component": "tsx ./scripts/create-backend-file.ts",
|
||||
"generate:schema": "tsx ./scripts/generate-schema-types.ts",
|
||||
|
@ -136,7 +136,6 @@ export const fnSecretBulkUpdate = async ({
|
||||
encryptedValue,
|
||||
userId,
|
||||
encryptedComment,
|
||||
version,
|
||||
metadata,
|
||||
reminderNote,
|
||||
reminderRepeatDays
|
||||
@ -149,7 +148,6 @@ export const fnSecretBulkUpdate = async ({
|
||||
key,
|
||||
userId,
|
||||
encryptedComment,
|
||||
version,
|
||||
metadata,
|
||||
reminderNote,
|
||||
encryptedValue,
|
||||
|
@ -370,12 +370,12 @@ export const secretV2BridgeServiceFactory = ({
|
||||
if (!folder)
|
||||
throw new BadRequestError({
|
||||
message: "Folder not found for the given environment slug & secret path",
|
||||
name: "Create secret"
|
||||
name: "Delete secret"
|
||||
});
|
||||
const folderId = folder.id;
|
||||
|
||||
if (ActorType.USER !== actor && inputSecret.type === SecretType.Personal) {
|
||||
throw new BadRequestError({ message: "Must be user to create personal secret" });
|
||||
throw new BadRequestError({ message: "Must be user to delete personal secret" });
|
||||
}
|
||||
|
||||
const deletedSecret = await secretDAL.transaction(async (tx) =>
|
||||
|
@ -547,10 +547,51 @@ export const fnSecretBulkInsert = async ({
|
||||
secretVersionTagDAL,
|
||||
tx
|
||||
}: TFnSecretBulkInsert) => {
|
||||
const newSecrets = await secretDAL.insertMany(
|
||||
inputSecrets.map(({ tags, references, ...el }) => ({ ...el, folderId })),
|
||||
tx
|
||||
const sanitizedInputSecrets = inputSecrets.map(
|
||||
({
|
||||
skipMultilineEncoding,
|
||||
type,
|
||||
userId,
|
||||
version,
|
||||
metadata,
|
||||
algorithm,
|
||||
secretKeyIV,
|
||||
secretKeyTag,
|
||||
secretValueIV,
|
||||
keyEncoding,
|
||||
secretValueTag,
|
||||
secretCommentIV,
|
||||
secretBlindIndex,
|
||||
secretCommentTag,
|
||||
secretKeyCiphertext,
|
||||
secretReminderNote,
|
||||
secretValueCiphertext,
|
||||
secretCommentCiphertext,
|
||||
secretReminderRepeatDays
|
||||
}) => ({
|
||||
skipMultilineEncoding,
|
||||
folderId,
|
||||
type,
|
||||
userId,
|
||||
version,
|
||||
metadata,
|
||||
algorithm,
|
||||
secretKeyIV,
|
||||
secretKeyTag,
|
||||
secretValueIV,
|
||||
keyEncoding,
|
||||
secretValueTag,
|
||||
secretCommentIV,
|
||||
secretBlindIndex,
|
||||
secretCommentTag,
|
||||
secretKeyCiphertext,
|
||||
secretReminderNote,
|
||||
secretValueCiphertext,
|
||||
secretCommentCiphertext,
|
||||
secretReminderRepeatDays
|
||||
})
|
||||
);
|
||||
const newSecrets = await secretDAL.insertMany(sanitizedInputSecrets, tx);
|
||||
const newSecretGroupByBlindIndex = groupBy(newSecrets, (item) => item.secretBlindIndex as string);
|
||||
const newSecretTags = inputSecrets.flatMap(({ tags: secretTags = [], secretBlindIndex }) =>
|
||||
secretTags.map((tag) => ({
|
||||
@ -559,9 +600,8 @@ export const fnSecretBulkInsert = async ({
|
||||
}))
|
||||
);
|
||||
const secretVersions = await secretVersionDAL.insertMany(
|
||||
inputSecrets.map(({ tags, references, ...el }) => ({
|
||||
sanitizedInputSecrets.map((el) => ({
|
||||
...el,
|
||||
folderId,
|
||||
secretId: newSecretGroupByBlindIndex[el.secretBlindIndex as string][0].id
|
||||
})),
|
||||
tx
|
||||
@ -596,13 +636,55 @@ export const fnSecretBulkUpdate = async ({
|
||||
secretTagDAL,
|
||||
secretVersionTagDAL
|
||||
}: TFnSecretBulkUpdate) => {
|
||||
const newSecrets = await secretDAL.bulkUpdate(
|
||||
inputSecrets.map(({ filter, data: { tags, references, ...data } }) => ({
|
||||
const sanitizedInputSecrets = inputSecrets.map(
|
||||
({
|
||||
filter,
|
||||
data: {
|
||||
skipMultilineEncoding,
|
||||
type,
|
||||
userId,
|
||||
metadata,
|
||||
algorithm,
|
||||
secretKeyIV,
|
||||
secretKeyTag,
|
||||
secretValueIV,
|
||||
keyEncoding,
|
||||
secretValueTag,
|
||||
secretCommentIV,
|
||||
secretBlindIndex,
|
||||
secretCommentTag,
|
||||
secretKeyCiphertext,
|
||||
secretReminderNote,
|
||||
secretValueCiphertext,
|
||||
secretCommentCiphertext,
|
||||
secretReminderRepeatDays
|
||||
}
|
||||
}) => ({
|
||||
filter: { ...filter, folderId },
|
||||
data
|
||||
})),
|
||||
tx
|
||||
data: {
|
||||
skipMultilineEncoding,
|
||||
type,
|
||||
userId,
|
||||
metadata,
|
||||
algorithm,
|
||||
secretKeyIV,
|
||||
secretKeyTag,
|
||||
secretValueIV,
|
||||
keyEncoding,
|
||||
secretValueTag,
|
||||
secretCommentIV,
|
||||
secretBlindIndex,
|
||||
secretCommentTag,
|
||||
secretKeyCiphertext,
|
||||
secretReminderNote,
|
||||
secretValueCiphertext,
|
||||
secretCommentCiphertext,
|
||||
secretReminderRepeatDays
|
||||
}
|
||||
})
|
||||
);
|
||||
|
||||
const newSecrets = await secretDAL.bulkUpdate(sanitizedInputSecrets, tx);
|
||||
const secretVersions = await secretVersionDAL.insertMany(
|
||||
newSecrets.map(({ id, createdAt, updatedAt, ...el }) => ({
|
||||
...el,
|
||||
@ -811,7 +893,7 @@ export const createManySecretsRawFnFactory = ({
|
||||
|
||||
const newSecrets = await secretDAL.transaction(async (tx) =>
|
||||
fnSecretBulkInsert({
|
||||
inputSecrets: inputSecrets.map(({ secretName, ...el }) => ({
|
||||
inputSecrets: inputSecrets.map(({ secretName, tags: _, ...el }) => ({
|
||||
...el,
|
||||
version: 0,
|
||||
secretBlindIndex: keyName2BlindIndex[secretName],
|
||||
|
@ -1675,6 +1675,7 @@ export const secretServiceFactory = ({
|
||||
});
|
||||
return { type: SecretProtectionType.Approval as const, approval };
|
||||
}
|
||||
|
||||
const secrets = await createManySecret({
|
||||
projectId,
|
||||
environment,
|
||||
|
Reference in New Issue
Block a user