diff --git a/src/index.ts b/src/index.ts index ef134950..aa17972c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -191,6 +191,14 @@ export class TypeScriptPlugin { path.basename(this.serverless.service.functions[name].package.artifact) ) }) + const layerNames = this.serverless.service.getAllLayers() + layerNames.forEach(name => { + this.serverless.service.layers[name].package.artifact = path.join( + this.originalServicePath, + serverlessFolder, + path.basename(this.serverless.service.layers[name].package.artifact) + ) + }) return } diff --git a/src/types.ts b/src/types.ts index 4ad23338..95cdd9d6 100644 --- a/src/types.ts +++ b/src/types.ts @@ -10,8 +10,10 @@ export interface ServerlessInstance { name: string } functions: { [key: string]: ServerlessFunction } + layers: { [key: string]: ServerlessLayer } package: ServerlessPackage getAllFunctions: () => string[] + getAllLayers: () => string[] } pluginManager: PluginManager } @@ -22,6 +24,11 @@ export interface ServerlessOptions { extraServicePath?: string } +export interface ServerlessLayer { + handler: string + package: ServerlessPackage +} + export interface ServerlessFunction { handler: string package: ServerlessPackage