[英]Serverless not including my node_modules
我有一个具有以下结构的 nodejs 无服务器项目:
-node_modules
-package.json
-serverless.yml
-funcitons
-medium
-mediumHandler.js
我的 serverless.yml:
service: googleAnalytic
provider:
name: aws
runtime: nodejs6.10
stage: dev
region: us-east-1
package:
include:
- node_modules/**
functions:
mediumHandler:
handler: functions/medium/mediumHandler.mediumHandler
events:
- schedule:
name: MediumSourceData
description: 'Captures data between set dates'
rate: rate(2 minutes)
- cloudwatchEvent:
event:
source:
- "Lambda"
detail-type:
- ""
- cloudwatchLog: '/aws/lambda/mediumHandler'
我的 sls 信息显示:
Service Information
service: googleAnalytic
stage: dev
region: us-east-1
stack: googleAnalytic-dev
api keys:
None
endpoints:
None
functions:
mediumHandler: googleAnalytic-dev-mediumHandler
当我运行 sls 时:
serverless invoke local -f mediumHandler
它可以工作,我的脚本在其中包含了 googleapis 和 aws-sdk 工作。 但是当我部署时,这些功能被跳过并且没有显示错误。
在调试serverless
的打包过程时,使用sls package
(或sls deploy --noDeploy
(对于旧版本)。您将获得一个.serverless
目录,您可以检查该目录以查看部署包中的内容。
从那里,你可以看到,如果node_modules
或包含未并更改您的serverless.yml
相应地,而无需每次你做出改变的时间部署。
默认情况下,无服务器将排除开发包。 检查您的package.json
并确保您需要的包在dependencies
对象中,因为devDependencies
将被排除在外。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.