diff --git a/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts index 64987a5f4..3ae96fe44 100644 --- a/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/lambda.driver.ts @@ -288,12 +288,9 @@ export class LambdaDriver implements ServerlessDriver { const startTime = Date.now(); - const computedVersion = - version === 'latest' ? serverlessFunction.latestVersion : version; - const folderPath = getServerlessFolder({ serverlessFunction, - version: computedVersion, + version, }); const tsCodeStream = await this.fileStorageService.read({ diff --git a/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts b/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts index c5621c1f7..d3b470948 100644 --- a/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/drivers/local.driver.ts @@ -82,12 +82,9 @@ export class LocalDriver implements ServerlessDriver { const startTime = Date.now(); - const computedVersion = - version === 'latest' ? serverlessFunction.latestVersion : version; - const folderPath = getServerlessFolder({ serverlessFunction, - version: computedVersion, + version, }); const tsCodeStream = await this.fileStorageService.read({ diff --git a/packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts b/packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts index 01f24af83..661ceda2b 100644 --- a/packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts +++ b/packages/twenty-server/src/engine/core-modules/serverless/utils/serverless-get-folder.utils.ts @@ -1,8 +1,14 @@ import { join } from 'path'; +import { isDefined } from 'twenty-shared'; + import { FileFolder } from 'src/engine/core-modules/file/interfaces/file-folder.interface'; import { ServerlessFunctionEntity } from 'src/engine/metadata-modules/serverless-function/serverless-function.entity'; +import { + ServerlessFunctionException, + ServerlessFunctionExceptionCode, +} from 'src/engine/metadata-modules/serverless-function/serverless-function.exception'; export const getServerlessFolder = ({ serverlessFunction, @@ -14,10 +20,17 @@ export const getServerlessFolder = ({ const computedVersion = version === 'latest' ? serverlessFunction.latestVersion : version; + if (!isDefined(computedVersion)) { + throw new ServerlessFunctionException( + 'Cannot compute serverless folder for undefined version', + ServerlessFunctionExceptionCode.SERVERLESS_FUNCTION_VERSION_NOT_FOUND, + ); + } + return join( 'workspace-' + serverlessFunction.workspaceId, FileFolder.ServerlessFunction, serverlessFunction.id, - computedVersion || '', + computedVersion, ); };