I have a lambda function for sending email templates with its own package.json
file:
{
"name": "send-email",
"version": "1.0.0",
"description": "netlify functions:create - Send email with no SMTP server via 'sendmail' pkg",
"main": "send-email.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"netlify",
"serverless",
"apis",
"email",
"js"
],
"author": "Netlify",
"license": "MIT",
"dependencies": {
"@sentry/node": "^5.24.2",
"@sentry/tracing": "^5.24.2",
"email-templates": "^7.1.0",
"nodemailer-mailgun-transport": "^2.0.0",
"pug": "^3.0.0"
}
}
Iβm using the plugin-functions-install-core
plugin to install my lambda dependencies.
[[plugins]]
package = "@netlify/plugin-functions-install-core"
When I deploy, my build log says everything was installed fineβ¦
...
10:29:48 AM: (build.command completed in 17.4s)
10:29:48 AM: β
10:29:48 AM: ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
10:29:48 AM: β 4. onBuild command from @netlify/plugin-functions-core β
10:29:48 AM: ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
10:29:48 AM: β
10:29:48 AM: Packaging Functions from functions directory:
10:29:48 AM: - generate-pdf/generate-pdf.js
10:29:48 AM: - send-email/send-email.js
10:30:04 AM: β
10:30:04 AM: (@netlify/plugin-functions-core onBuild completed in 15.2s)
10:30:04 AM: β
...
And yet, I am running into this error in my functions log when I try to send an e-mail:
10:31:28 AM: 2020-10-21T17:31:28.103Z 76c21354-9995-4362-84e8-cd362648f8c9 ERROR Unhandled Promise Rejection {"errorType":"Runtime.UnhandledPromiseRejection","errorMessage":"Error: Cannot find module 'pug'\nRequire stack:\n- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js\n- /var/task/src/functions/send-email/node_modules/consolidate/index.js\n- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js\n- /var/task/src/functions/send-email/config.js\n- /var/task/src/functions/send-email/send-email.js\n- /var/task/send-email.js\n- /var/runtime/UserFunction.js\n- /var/runtime/index.js","reason":{"errorType":"Error","errorMessage":"Cannot find module 'pug'\nRequire stack:\n- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js\n- /var/task/src/functions/send-email/node_modules/consolidate/index.js\n- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js\n- /var/task/src/functions/send-email/config.js\n- /var/task/src/functions/send-email/send-email.js\n- /var/task/send-email.js\n- /var/runtime/UserFunction.js\n- /var/runtime/index.js","code":"MODULE_NOT_FOUND","requireStack":["/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js","/var/task/src/functions/send-email/node_modules/consolidate/index.js","/var/task/src/functions/send-email/node_modules/email-templates/lib/index.js","/var/task/src/functions/send-email/config.js","/var/task/src/functions/send-email/send-email.js","/var/task/send-email.js","/var/runtime/UserFunction.js","/var/runtime/index.js"],"stack":["Error: Cannot find module 'pug'","Require stack:","- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js","- /var/task/src/functions/send-email/node_modules/consolidate/index.js","- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js","- /var/task/src/functions/send-email/config.js","- /var/task/src/functions/send-email/send-email.js","- /var/task/send-email.js","- /var/runtime/UserFunction.js","- /var/runtime/index.js"," at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)"," at Function.Module._load (internal/modules/cjs/loader.js:841:27)"," at Module.require (internal/modules/cjs/loader.js:1025:19)"," at require (internal/modules/cjs/helpers.js:72:18)"," at /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:939:33"," at /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:161:5"," at Promise._execute (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:384:9)"," at Promise._resolveFromExecutor (/var/task/src/functions/send-email/node_modules/bluebird/js/release/promise.js:518:18)"," at new Promise (/var/task/src/functions/send-email/node_modules/bluebird/js/release/promise.js:103:10)"," at promisify (/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:154:10)"," at exports.pug (/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:935:10)"," at /var/task/src/functions/send-email/node_modules/pify/index.js:33:11"," at new Promise (<anonymous>)"," at /var/task/src/functions/send-email/node_modules/pify/index.js:6:9"," at Object.apply (/var/task/src/functions/send-email/node_modules/pify/index.js:85:19)"," at Email.render (/var/task/src/functions/send-email/node_modules/email-templates/lib/index.js:218:37)"]},"promise":{"isFulfilled":false,"isRejected":true,"rejectionReason":{"errorType":"Error","errorMessage":"Cannot find module 'pug'\nRequire stack:\n- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js\n- /var/task/src/functions/send-email/node_modules/consolidate/index.js\n- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js\n- /var/task/src/functions/send-email/config.js\n- /var/task/src/functions/send-email/send-email.js\n- /var/task/send-email.js\n- /var/runtime/UserFunction.js\n- /var/runtime/index.js","code":"MODULE_NOT_FOUND","requireStack":["/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js","/var/task/src/functions/send-email/node_modules/consolidate/index.js","/var/task/src/functions/send-email/node_modules/email-templates/lib/index.js","/var/task/src/functions/send-email/config.js","/var/task/src/functions/send-email/send-email.js","/var/task/send-email.js","/var/runtime/UserFunction.js","/var/runtime/index.js"],"stack":["Error: Cannot find module 'pug'","Require stack:","- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js","- /var/task/src/functions/send-email/node_modules/consolidate/index.js","- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js","- /var/task/src/functions/send-email/config.js","- /var/task/src/functions/send-email/send-email.js","- /var/task/send-email.js","- /var/runtime/UserFunction.js","- /var/runtime/index.js"," at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)"," at Function.Module._load (internal/modules/cjs/loader.js:841:27)"," at Module.require (internal/modules/cjs/loader.js:1025:19)"," at require (internal/modules/cjs/helpers.js:72:18)"," at /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:939:33"," at /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:161:5"," at Promise._execute (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:384:9)"," at Promise._resolveFromExecutor (/var/task/src/functions/send-email/node_modules/bluebird/js/release/promise.js:518:18)"," at new Promise (/var/task/src/functions/send-email/node_modules/bluebird/js/release/promise.js:103:10)"," at promisify (/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:154:10)"," at exports.pug (/var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js:935:10)"," at /var/task/src/functions/send-email/node_modules/pify/index.js:33:11"," at new Promise (<anonymous>)"," at /var/task/src/functions/send-email/node_modules/pify/index.js:6:9"," at Object.apply (/var/task/src/functions/send-email/node_modules/pify/index.js:85:19)"," at Email.render (/var/task/src/functions/send-email/node_modules/email-templates/lib/index.js:218:37)"]}},"stack":["Runtime.UnhandledPromiseRejection: Error: Cannot find module 'pug'","Require stack:","- /var/task/src/functions/send-email/node_modules/consolidate/lib/consolidate.js","- /var/task/src/functions/send-email/node_modules/consolidate/index.js","- /var/task/src/functions/send-email/node_modules/email-templates/lib/index.js","- /var/task/src/functions/send-email/config.js","- /var/task/src/functions/send-email/send-email.js","- /var/task/send-email.js","- /var/runtime/UserFunction.js","- /var/runtime/index.js"," at process.<anonymous> (/var/runtime/index.js:35:15)"," at process.emit (events.js:327:22)"," at process.EventEmitter.emit (domain.js:483:12)"," at eventToObjectGenerator.promiseCreated (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:258:33)"," at activeFireEvent (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:301:44)"," at fireRejectionEvent (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:703:14)"," at Promise._notifyUnhandledRejection (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:90:9)"," at Timeout.unhandledRejectionCheck [as _onTimeout] (/var/task/src/functions/send-email/node_modules/bluebird/js/release/debuggability.js:39:25)"," at listOnTimeout (internal/timers.js:549:17)"," at processTimers (internal/timers.js:492:7)"]}
10:31:28 AM: Duration: 86.00 ms Memory Usage: 158 MB Init Duration: 1900.00 ms
10:31:28 AM: Unknown application error occurred
Iβve search this community forum as well as github for relevant information, but havenβt found a specific problem/solution