-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
Problem description
I can use Firebase's Firestore on local deno instances, but it fails on Deno Deploy.
Steps to reproduce
My code:
{
"imports": {
"@firebase-admin": "npm:firebase-admin@^11.0.0", // Using later versions causes problems with https://github.com/denoland/deno/issues/28566
"@firestore": "npm:firebase-admin@^11.0.0/firestore"
}
}import admin from "@firebase-admin";
import { getFirestore } from "@firestore";
const serviceAccount = {
"type": "service_account",
// This JSON comes from https://console.firebase.google.com/project/MY_PROJECT_NAME/settings/serviceaccounts/adminsdk
};
const app = admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
});
const db = getFirestore(app);
console.log("Firestore connected via service account.");
const docRef = db.collection("test-collection").doc("test");
const result = await docRef.get();
console.log(result.data()); // Should return useful data or undefined.Expected behavior
Running locally works as expected:
> deno run --allow-env --allow-net main.ts
Firestore connected via service account.
{ a: "b" }But Deno Deploy fails:
> deployctl deploy --include=. --entrypoint=main.ts
...
✔ Uploaded 1 new asset.
✖ Deployment failed.
error: The deployment failed: UNCAUGHT_EXCEPTION
TypeError: addressList.filter is not a function
at file:///node_modules/.deno/@grpc+grpc-js@1.8.22/node_modules/@grpc/grpc-js/build/src/resolver-dns.js:167:50
at Object.runMicrotasks (ext:core/01_core.js:692:26)
at Array.processTicksAndRejections (ext:deno_node/_next_tick.ts:59:10)
at eventLoopTick (ext:core/01_core.js:175:29)Environment
Deno v2.5.6 and Deno Deploy Classic
Possible solution
No response
Additional context
The problematic code is a https://github.com/grpc/grpc-node/blob/master/packages/grpc-js/src/resolver-dns.ts#L193
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels