Add ServerlessFunction to migration v2 (#14698)
This commit is contained in:
+1
@@ -5,4 +5,5 @@ export const ALL_FLAT_ENTITY_MAPS_PROPERTIES = [
|
||||
'flatViewFieldMaps',
|
||||
'flatViewMaps',
|
||||
'flatIndexMaps',
|
||||
'flatServerlessFunctionMaps',
|
||||
] as const satisfies (keyof AllFlatEntityMaps)[];
|
||||
|
||||
+1
@@ -9,4 +9,5 @@ export const EMPTY_ALL_FLAT_ENTITY_MAPS = {
|
||||
flatIndexMaps: EMPTY_FLAT_ENTITY_MAPS,
|
||||
flatViewFieldMaps: EMPTY_FLAT_ENTITY_MAPS,
|
||||
flatViewMaps: EMPTY_FLAT_ENTITY_MAPS,
|
||||
flatServerlessFunctionMaps: EMPTY_FLAT_ENTITY_MAPS,
|
||||
} as const satisfies AllFlatEntityMaps;
|
||||
|
||||
+2
@@ -2,6 +2,7 @@ import { type FlatViewField } from 'src/engine/core-modules/view/flat-view/types
|
||||
import { type FlatView } from 'src/engine/core-modules/view/flat-view/types/flat-view.type';
|
||||
import { type FlatIndexMetadata } from 'src/engine/metadata-modules/flat-index-metadata/types/flat-index-metadata.type';
|
||||
import { type FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type';
|
||||
import { type FlatServerlessFunction } from 'src/engine/metadata-modules/serverless-function/types/flat-serverless-function.type';
|
||||
|
||||
export type AllFlatEntitiesByMetadataEngineName = {
|
||||
// flatFieldMetadata: FlatFieldMetadata;
|
||||
@@ -9,4 +10,5 @@ export type AllFlatEntitiesByMetadataEngineName = {
|
||||
view: FlatView;
|
||||
viewField: FlatViewField;
|
||||
index: FlatIndexMetadata;
|
||||
serverlessFunction: FlatServerlessFunction;
|
||||
};
|
||||
|
||||
@@ -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),
|
||||
|
||||
+2
-1
@@ -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)) {
|
||||
|
||||
Reference in New Issue
Block a user