I have a small serverless project I started recently with node.js on AWS. It currently has 6 functions.
When packaged, each of those functions is between 50 and 800 KB.
I have 3 dependencies installed via npm, and 8 dev-dependencies, one of which is the aws-sdk.
However, in the
.serverless folder there is another zip called
custom-resources.zip. It is 49MB. Unzipped, it is 300MB, which causes CloudFormation to fail. It appears to be fully generated by the framework. The contents of this zip are as follows:
- apiGatewayCloudWatchRole (folder, 2KB)
- cognitoUserPool (folder, 10KB)
- eventBridge (folder, 7KB)
- s3 (folder, 7KB)
- node_modules (folder, 49MB)
- package.json (file, 1KB)
- utils.js (file, 3KB)
- README.md (file, 1KB)
node_modules folder contains a single module, which is my entire project directory, which contains my entire
node_modules file including all dependencies.
I’m pretty sure that shouldn’t be uploaded, especially since it also includes my
.idea/ folder which is supposed to be excluded with
package: individually: true exclude: - '*.iml' - .idea/**
Is this supposed to happen?