Add ServerlessFunction to migration v2 (#14698)

This commit is contained in:
Weiko
2025-09-25 14:05:01 +02:00
committed by GitHub
parent edb331d68b
commit 188d66909d
45 changed files with 1671 additions and 112 deletions
@@ -234,7 +234,7 @@ export class LambdaDriver implements ServerlessDriver {
}
const layerArn = await this.createLayerIfNotExists(
serverlessFunction.layerVersion,
serverlessFunction.layerVersion ?? 0,
);
const lambdaBuildDirectoryManager = new LambdaBuildDirectoryManager();
@@ -49,7 +49,7 @@ export class LocalDriver implements ServerlessDriver {
async delete() {}
private async build(serverlessFunction: ServerlessFunctionEntity) {
await this.createLayerIfNotExists(serverlessFunction.layerVersion);
await this.createLayerIfNotExists(serverlessFunction.layerVersion ?? 0);
}
private async executeWithTimeout<T>(
@@ -113,6 +113,10 @@ export class LocalDriver implements ServerlessDriver {
await fs.writeFile(compiledCodeFilePath, compiledCode, 'utf8');
try {
if (!serverlessFunction.layerVersion) {
throw new Error('Layer version is not set');
}
await fs.symlink(
join(
this.getInMemoryLayerFolderPath(serverlessFunction.layerVersion),
@@ -9,12 +9,13 @@ import {
ServerlessFunctionException,
ServerlessFunctionExceptionCode,
} from 'src/engine/metadata-modules/serverless-function/serverless-function.exception';
import { type FlatServerlessFunction } from 'src/engine/metadata-modules/serverless-function/types/flat-serverless-function.type';
export const getServerlessFolder = ({
serverlessFunction,
version,
}: {
serverlessFunction: ServerlessFunctionEntity;
serverlessFunction: ServerlessFunctionEntity | FlatServerlessFunction;
version?: 'draft' | 'latest' | (string & NonNullable<unknown>);
}) => {
if (version === 'latest' && !isDefined(serverlessFunction.latestVersion)) {