Firebase deploy error - Cannot find module 'firebase'
Figured out the solution. I hadn't installed the firebase module in the functions folder but had included it in the parent folder of functions
. I went into functions and ran npm install --save firebase
and the deploy was successful.
Related videos on Youtube
skonz
Updated on August 14, 2022Comments
-
skonz over 1 year
I'm trying to deploy Google Cloud function triggers that trigger from db events, but when I run
firebase deploy
The functions aren't deployed properly and I get an error sayingError: Cannot find module firebase
When I was first creating the project I could deploy functions without any issues. It's been a few days since I last deployed anything, but now I'm getting this issue on all my functions (not just my trigger functions)
My function:
exports.deleteNotificationOnUnlike = functions .region("us-central1") .firestore.document("likes/{id}") .onDelete((snapshot) => { return db .doc(`/notifications/${snapshot.id}`) .delete() .catch((err) => console.error(err)); });
Package.json
{ "name": "functions", "description": "Cloud Functions for Firebase", "scripts": { "serve": "firebase serve --only functions", "shell": "firebase functions:shell", "start": "npm run shell", "deploy": "firebase deploy --only functions", "logs": "firebase functions:log" }, "engines": { "node": "8" }, "dependencies": { "busboy": "^0.3.1", "firebase-admin": "^8.0.0", "firebase-functions": "^3.1.0" }, "devDependencies": { "firebase-functions-test": "^0.1.6" }, "private": true }
Expecting the functions to deploy successfully but getting this error:
Error messages from firebase:
Code in file index.js can't be loaded. Did you list all required modules in the package.json dependencies? Detailed stack trace: Error: Cannot find module 'firebase' at Function.Module._resolveFilename (module.js:548:15) at Function.Module._load (module.js:475:25) at Module.require (module.js:597:17) at require (internal/module.js:11:18) at Object.<anonymous> (/srv/handlers/users.js:5:18) at Module._compile (module.js:653:30) at Object.Module._extensions..js (module.js:664:10) at Module.load (module.js:566:32) at tryModuleLoad (module.js:506:12) at Function.Module._load (module.js:498:3)
{"@type":"type.googleapis.com/google.cloud.audit.AuditLog","status":{"code":3,"message":"INVALID_ARGUMENT"},"authenticationInfo":{"principalEmail":"*********"},"requestMetadata":{"requestAttributes":{},"destinationAttributes":{}},"serviceName":"cloudfunctions.googleapis.com","methodName":"google.cloud.functions.v1.CloudFunctionsService.CreateFunction","resourceName":"projects/*******/locations/us-central1/functions/createNotificationOnComment"}
I've seen some posts where people were missing some modules and needed to run an
npm i XXX
inside the functions folder, but I haven't seen any instances where it was saying that the firebase module couldn't be found, and I'm not sure what changes from my last successful deployment, or what module I might be missing.