Compare commits

...

2 Commits

4 changed files with 21 additions and 26 deletions

View File

@ -139,6 +139,7 @@ export const secretRotationV2ServiceFactory = ({
resourceMetadataDAL, resourceMetadataDAL,
permissionService, permissionService,
appConnectionService, appConnectionService,
folderCommitService,
projectBotService, projectBotService,
licenseService, licenseService,
kmsService, kmsService,
@ -147,7 +148,6 @@ export const secretRotationV2ServiceFactory = ({
snapshotService, snapshotService,
keyStore, keyStore,
queueService, queueService,
folderCommitService,
appConnectionDAL appConnectionDAL
}: TSecretRotationV2ServiceFactoryDep) => { }: TSecretRotationV2ServiceFactoryDep) => {
const $queueSendSecretRotationStatusNotification = async (secretRotation: TSecretRotationV2Raw) => { const $queueSendSecretRotationStatusNotification = async (secretRotation: TSecretRotationV2Raw) => {
@ -541,12 +541,8 @@ export const secretRotationV2ServiceFactory = ({
secretVersionDAL: secretVersionV2BridgeDAL, secretVersionDAL: secretVersionV2BridgeDAL,
secretVersionTagDAL: secretVersionTagV2BridgeDAL, secretVersionTagDAL: secretVersionTagV2BridgeDAL,
secretTagDAL, secretTagDAL,
folderCommitService,
resourceMetadataDAL, resourceMetadataDAL,
actor: { folderCommitService
type: actor.type,
actorId: actor.id
}
}); });
await secretRotationV2DAL.insertSecretMappings( await secretRotationV2DAL.insertSecretMappings(
@ -682,12 +678,8 @@ export const secretRotationV2ServiceFactory = ({
secretVersionDAL: secretVersionV2BridgeDAL, secretVersionDAL: secretVersionV2BridgeDAL,
secretVersionTagDAL: secretVersionTagV2BridgeDAL, secretVersionTagDAL: secretVersionTagV2BridgeDAL,
secretTagDAL, secretTagDAL,
folderCommitService,
resourceMetadataDAL, resourceMetadataDAL,
actor: { folderCommitService
type: actor.type,
actorId: actor.id
}
}); });
secretsMappingUpdated = true; secretsMappingUpdated = true;
@ -805,7 +797,6 @@ export const secretRotationV2ServiceFactory = ({
projectId, projectId,
folderId, folderId,
actorId: actor.id, // not actually used since rotated secrets are shared actorId: actor.id, // not actually used since rotated secrets are shared
actorType: actor.type,
folderCommitService, folderCommitService,
secretVersionDAL: secretVersionV2BridgeDAL, secretVersionDAL: secretVersionV2BridgeDAL,
tx tx
@ -951,12 +942,9 @@ export const secretRotationV2ServiceFactory = ({
secretDAL: secretV2BridgeDAL, secretDAL: secretV2BridgeDAL,
secretVersionDAL: secretVersionV2BridgeDAL, secretVersionDAL: secretVersionV2BridgeDAL,
secretVersionTagDAL: secretVersionTagV2BridgeDAL, secretVersionTagDAL: secretVersionTagV2BridgeDAL,
folderCommitService,
actor: {
type: ActorType.PLATFORM
},
secretTagDAL, secretTagDAL,
resourceMetadataDAL resourceMetadataDAL,
folderCommitService
}); });
const currentTime = new Date(); const currentTime = new Date();

View File

@ -804,8 +804,9 @@ export const folderCommitServiceFactory = ({
); );
}; };
const arraysEqual = (a1: unknown[], a2: unknown[]) => const arraysEqual = (a1: unknown[], a2: unknown[]) => {
a1.length === a2.length && a1.every((obj1) => a2.some((obj2) => objectsEqual(obj1, obj2))); return a1.length === a2.length && a1.every((obj1) => a2.some((obj2) => objectsEqual(obj1, obj2)));
};
const version1Reshaped = { const version1Reshaped = {
...version1, ...version1,
@ -815,7 +816,7 @@ export const folderCommitServiceFactory = ({
encryptedComment: version1.encryptedComment encryptedComment: version1.encryptedComment
? secretManagerDecryptor({ cipherTextBlob: version1.encryptedComment }).toString() ? secretManagerDecryptor({ cipherTextBlob: version1.encryptedComment }).toString()
: "", : "",
metadata: version1.metadata as { key: string; value: string }[], metadata: Array.isArray(version1.metadata) ? (version1.metadata as { key: string; value: string }[]) : [],
tags: version1.tags.map((tag) => tag.id) tags: version1.tags.map((tag) => tag.id)
}; };
const version2Reshaped = { const version2Reshaped = {
@ -826,7 +827,7 @@ export const folderCommitServiceFactory = ({
encryptedComment: version2.encryptedComment encryptedComment: version2.encryptedComment
? secretManagerDecryptor({ cipherTextBlob: version2.encryptedComment }).toString() ? secretManagerDecryptor({ cipherTextBlob: version2.encryptedComment }).toString()
: "", : "",
metadata: version2.metadata as { key: string; value: string }[], metadata: Array.isArray(version2.metadata) ? (version2.metadata as { key: string; value: string }[]) : [],
tags: version2.tags.map((tag) => tag.id) tags: version2.tags.map((tag) => tag.id)
}; };
return ( return (

View File

@ -76,6 +76,7 @@ export const fnSecretBulkInsert = async ({
secretVersionTagDAL, secretVersionTagDAL,
folderCommitService, folderCommitService,
actor, actor,
skipCommit,
tx tx
}: TFnSecretBulkInsert) => { }: TFnSecretBulkInsert) => {
const sanitizedInputSecrets = inputSecrets.map( const sanitizedInputSecrets = inputSecrets.map(
@ -141,7 +142,7 @@ export const fnSecretBulkInsert = async ({
secretVersionId: sv.id secretVersionId: sv.id
})); }));
if (commitChanges.length > 0) { if (commitChanges.length > 0 && !skipCommit) {
await folderCommitService.createCommit( await folderCommitService.createCommit(
{ {
actor: { actor: {
@ -216,7 +217,8 @@ export const fnSecretBulkUpdate = async ({
secretTagDAL, secretTagDAL,
secretVersionTagDAL, secretVersionTagDAL,
resourceMetadataDAL, resourceMetadataDAL,
actor actor,
skipCommit
}: TFnSecretBulkUpdate) => { }: TFnSecretBulkUpdate) => {
const userActorId = actor && actor?.type === ActorType.USER ? actor?.actorId : undefined; const userActorId = actor && actor?.type === ActorType.USER ? actor?.actorId : undefined;
const identityActorId = actor && actor?.type === ActorType.IDENTITY ? actor?.actorId : undefined; const identityActorId = actor && actor?.type === ActorType.IDENTITY ? actor?.actorId : undefined;
@ -366,7 +368,7 @@ export const fnSecretBulkUpdate = async ({
isUpdate: true, isUpdate: true,
secretVersionId: sv.id secretVersionId: sv.id
})); }));
if (commitChanges.length > 0) { if (commitChanges.length > 0 && !skipCommit) {
await folderCommitService.createCommit( await folderCommitService.createCommit(
{ {
actor: { actor: {
@ -395,7 +397,8 @@ export const fnSecretBulkDelete = async ({
secretDAL, secretDAL,
secretQueueService, secretQueueService,
folderCommitService, folderCommitService,
secretVersionDAL secretVersionDAL,
skipCommit
}: TFnSecretBulkDelete) => { }: TFnSecretBulkDelete) => {
const deletedSecrets = await secretDAL.deleteMany( const deletedSecrets = await secretDAL.deleteMany(
inputSecrets.map(({ type, secretKey }) => ({ inputSecrets.map(({ type, secretKey }) => ({
@ -427,7 +430,7 @@ export const fnSecretBulkDelete = async ({
type: CommitType.DELETE, type: CommitType.DELETE,
secretVersionId: secretVersions[id].id secretVersionId: secretVersions[id].id
})); }));
if (commitChanges.length > 0) { if (commitChanges.length > 0 && !skipCommit) {
await folderCommitService.createCommit( await folderCommitService.createCommit(
{ {
actor: { actor: {

View File

@ -184,6 +184,7 @@ export type TFnSecretBulkInsert = {
type: string; type: string;
actorId?: string; actorId?: string;
}; };
skipCommit?: boolean;
}; };
type TRequireReferenceIfValue = type TRequireReferenceIfValue =
@ -214,6 +215,7 @@ export type TFnSecretBulkUpdate = {
actorId?: string; actorId?: string;
}; };
tx?: Knex; tx?: Knex;
skipCommit?: boolean;
}; };
export type TFnSecretBulkDelete = { export type TFnSecretBulkDelete = {
@ -229,6 +231,7 @@ export type TFnSecretBulkDelete = {
}; };
folderCommitService: Pick<TFolderCommitServiceFactory, "createCommit">; folderCommitService: Pick<TFolderCommitServiceFactory, "createCommit">;
secretVersionDAL: Pick<TSecretVersionV2DALFactory, "findLatestVersionMany">; secretVersionDAL: Pick<TSecretVersionV2DALFactory, "findLatestVersionMany">;
skipCommit?: boolean;
}; };
export type THandleReminderDTO = { export type THandleReminderDTO = {