mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-07 20:27:43 +00:00
Fixed path return
This commit is contained in:
@@ -17,8 +17,7 @@ export const SecretFoldersSchema = z.object({
|
|||||||
parentId: z.string().uuid().nullable().optional(),
|
parentId: z.string().uuid().nullable().optional(),
|
||||||
isReserved: z.boolean().default(false).nullable().optional(),
|
isReserved: z.boolean().default(false).nullable().optional(),
|
||||||
description: z.string().nullable().optional(),
|
description: z.string().nullable().optional(),
|
||||||
lastSecretModified: z.date().nullable().optional(),
|
lastSecretModified: z.date().nullable().optional()
|
||||||
path: z.string()
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export type TSecretFolders = z.infer<typeof SecretFoldersSchema>;
|
export type TSecretFolders = z.infer<typeof SecretFoldersSchema>;
|
||||||
|
|||||||
@@ -58,7 +58,9 @@ export const registerSecretFolderRouter = async (server: FastifyZodProvider) =>
|
|||||||
}),
|
}),
|
||||||
response: {
|
response: {
|
||||||
200: z.object({
|
200: z.object({
|
||||||
folder: SecretFoldersSchema
|
folder: SecretFoldersSchema.extend({
|
||||||
|
path: z.string()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -143,7 +145,9 @@ export const registerSecretFolderRouter = async (server: FastifyZodProvider) =>
|
|||||||
}),
|
}),
|
||||||
response: {
|
response: {
|
||||||
200: z.object({
|
200: z.object({
|
||||||
folder: SecretFoldersSchema
|
folder: SecretFoldersSchema.extend({
|
||||||
|
path: z.string()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -238,8 +238,16 @@ export const secretFolderServiceFactory = ({
|
|||||||
return doc;
|
return doc;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const [folderWithFullPath] = await folderDAL.findSecretPathByFolderIds(projectId, [folder.id]);
|
||||||
|
|
||||||
|
if (!folderWithFullPath) {
|
||||||
|
throw new NotFoundError({
|
||||||
|
message: `Failed to retrieve path for folder with ID '${folder.id}'`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
await snapshotService.performSnapshot(folder.parentId as string);
|
await snapshotService.performSnapshot(folder.parentId as string);
|
||||||
return folder;
|
return { ...folder, path: folderWithFullPath.path };
|
||||||
};
|
};
|
||||||
|
|
||||||
const updateManyFolders = async ({
|
const updateManyFolders = async ({
|
||||||
@@ -496,8 +504,27 @@ export const secretFolderServiceFactory = ({
|
|||||||
return doc;
|
return doc;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const foldersWithFullPaths = await folderDAL.findSecretPathByFolderIds(projectId, [newFolder.id, folder.id]);
|
||||||
|
|
||||||
|
const newFolderWithFullPath = foldersWithFullPaths.find((f) => f?.id === newFolder.id);
|
||||||
|
if (!newFolderWithFullPath) {
|
||||||
|
throw new NotFoundError({
|
||||||
|
message: `Failed to retrieve path for folder with ID '${newFolder.id}'`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const folderWithFullPath = foldersWithFullPaths.find((f) => f?.id === folder.id);
|
||||||
|
if (!folderWithFullPath) {
|
||||||
|
throw new NotFoundError({
|
||||||
|
message: `Failed to retrieve path for folder with ID '${folder.id}'`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
await snapshotService.performSnapshot(newFolder.parentId as string);
|
await snapshotService.performSnapshot(newFolder.parentId as string);
|
||||||
return { folder: newFolder, old: folder };
|
return {
|
||||||
|
folder: { ...newFolder, path: newFolderWithFullPath.path },
|
||||||
|
old: { ...folder, path: folderWithFullPath.path }
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
const $checkFolderPolicy = async ({
|
const $checkFolderPolicy = async ({
|
||||||
|
|||||||
Reference in New Issue
Block a user