Skip to content

TypeError: Cannot read properties of null (reading 'length') deploying cloud function typescript #8384

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
kantino789 opened this issue Mar 28, 2025 · 1 comment

Comments

@kantino789
Copy link

kantino789 commented Mar 28, 2025

[REQUIRED] Environment info

firebase-tools:14.0.0

Platform:Ubuntu

[REQUIRED] Test case

import * as functions from "firebase-functions";

export const helloworld = functions.https.onRequest((req, res) => {
    res.send("Hello, world!");
});

[REQUIRED] Steps to reproduce

Run firebase deploy --only functions with the previous code

[REQUIRED] Expected behavior

Cloud function should be deployed

[REQUIRED] Actual behavior

An error occurred, logs:

firebase deploy --only functions --debug
[2025-03-28T14:17:54.371Z] Object "" in "firebase.json" has unknown property: {"additionalProperty":"flutter"}
(node:37225) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
(Use node --trace-deprecation ... to show where the warning was created)
[2025-03-28T14:17:54.376Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[2025-03-28T14:17:54.376Z] > authorizing via signed-in user (user)
[2025-03-28T14:17:54.376Z] [iam] checking project projects-manager-9332b for permissions ["cloudfunctions.functions.create","cloudfunctions.functions.delete","cloudfunctions.functions.get","cloudfunctions.functions.list","cloudfunctions.functions.update","cloudfunctions.operations.get","firebase.projects.get"]
[2025-03-28T14:17:54.377Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:17:54.378Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:17:54.379Z] >>> [apiv2][query] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions [none]
[2025-03-28T14:17:54.379Z] >>> [apiv2][(partial)header] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:17:54.380Z] >>> [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["cloudfunctions.functions.create","cloudfunctions.functions.delete","cloudfunctions.functions.get","cloudfunctions.functions.list","cloudfunctions.functions.update","cloudfunctions.operations.get","firebase.projects.get"]}
[2025-03-28T14:17:55.315Z] <<< [apiv2][status] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions 200
[2025-03-28T14:17:55.315Z] <<< [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["cloudfunctions.functions.create","cloudfunctions.functions.delete","cloudfunctions.functions.get","cloudfunctions.functions.list","cloudfunctions.functions.update","cloudfunctions.operations.get","firebase.projects.get"]}
[2025-03-28T14:17:55.316Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:17:55.316Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:17:55.317Z] >>> [apiv2][query] POST https://iam.googleapis.com/v1/projects/projects-manager-9332b/serviceAccounts/[email protected]:testIamPermissions [none]
[2025-03-28T14:17:55.317Z] >>> [apiv2][body] POST https://iam.googleapis.com/v1/projects/projects-manager-9332b/serviceAccounts/[email protected]:testIamPermissions {"permissions":["iam.serviceAccounts.actAs"]}
[2025-03-28T14:17:56.181Z] <<< [apiv2][status] POST https://iam.googleapis.com/v1/projects/projects-manager-9332b/serviceAccounts/[email protected]:testIamPermissions 200
[2025-03-28T14:17:56.182Z] <<< [apiv2][body] POST https://iam.googleapis.com/v1/projects/projects-manager-9332b/serviceAccounts/[email protected]:testIamPermissions {"permissions":["iam.serviceAccounts.actAs"]}

=== Deploying to 'projects'...

i deploying functions
Running command: npm --prefix "$RESOURCE_DIR" run build

build
tsc

✔ functions: Finished running predeploy script.
[2025-03-28T14:18:00.174Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.174Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.174Z] >>> [apiv2][query] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b [none]
[2025-03-28T14:18:00.436Z] <<< [apiv2][status] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b 200
[2025-03-28T14:18:00.436Z] <<< [apiv2][body] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b {"projectNumber":"924673232878","projectId":"projects-manager-9332b","lifecycleState":"ACTIVE","name":"projects-manager","labels":{"firebase":"enabled","firebase-core":"disabled"},"createTime":"2025-02-11T08:53:03.589462Z"}
i functions: preparing codebase default for deployment
i functions: ensuring required API cloudfunctions.googleapis.com is enabled...
[2025-03-28T14:18:00.439Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.440Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.440Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.440Z] Checked if tokens are valid: true, expires at: 1743172508195
i functions: ensuring required API cloudbuild.googleapis.com is enabled...
[2025-03-28T14:18:00.441Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.441Z] Checked if tokens are valid: true, expires at: 1743172508195
i artifactregistry: ensuring required API artifactregistry.googleapis.com is enabled...
[2025-03-28T14:18:00.442Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.442Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:00.442Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudfunctions.googleapis.com [none]
[2025-03-28T14:18:00.442Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudfunctions.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:00.445Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/runtimeconfig.googleapis.com [none]
[2025-03-28T14:18:00.445Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/runtimeconfig.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:00.448Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudbuild.googleapis.com [none]
[2025-03-28T14:18:00.448Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudbuild.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:00.450Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/artifactregistry.googleapis.com [none]
[2025-03-28T14:18:00.450Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/artifactregistry.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:01.500Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudfunctions.googleapis.com 200
[2025-03-28T14:18:01.501Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudfunctions.googleapis.com [omitted]
✔ functions: required API cloudfunctions.googleapis.com is enabled
[2025-03-28T14:18:01.513Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudbuild.googleapis.com 200
[2025-03-28T14:18:01.513Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/cloudbuild.googleapis.com [omitted]
✔ functions: required API cloudbuild.googleapis.com is enabled
[2025-03-28T14:18:01.556Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/artifactregistry.googleapis.com 200
[2025-03-28T14:18:01.556Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/artifactregistry.googleapis.com [omitted]
✔ artifactregistry: required API artifactregistry.googleapis.com is enabled
[2025-03-28T14:18:01.573Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/runtimeconfig.googleapis.com 200
[2025-03-28T14:18:01.573Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/runtimeconfig.googleapis.com [omitted]
[2025-03-28T14:18:01.573Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:01.574Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:01.574Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/projects-manager-9332b/adminSdkConfig [none]
[2025-03-28T14:18:02.004Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/projects-manager-9332b/adminSdkConfig 200
[2025-03-28T14:18:02.004Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/projects-manager-9332b/adminSdkConfig {"projectId":"projects-manager-9332b","storageBucket":"projects-manager-9332b.firebasestorage.app"}
[2025-03-28T14:18:02.005Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:02.006Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:02.006Z] >>> [apiv2][query] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs [none]
[2025-03-28T14:18:03.000Z] <<< [apiv2][status] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs 200
[2025-03-28T14:18:03.001Z] <<< [apiv2][body] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs {"configs":[{"name":"projects/projects-manager-9332b/configs/stripe"}]}
[2025-03-28T14:18:03.002Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:03.002Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:03.003Z] >>> [apiv2][query] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables [none]
[2025-03-28T14:18:03.907Z] <<< [apiv2][status] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables 200
[2025-03-28T14:18:03.907Z] <<< [apiv2][body] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables {"variables":[{"name":"projects/projects-manager-9332b/configs/stripe/variables/secret","updateTime":"2025-03-28T09:52:35.156701151Z"}]}
[2025-03-28T14:18:03.908Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:03.908Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:03.909Z] >>> [apiv2][query] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables/secret [none]
[2025-03-28T14:18:04.178Z] <<< [apiv2][status] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables/secret 200
[2025-03-28T14:18:04.179Z] <<< [apiv2][body] GET https://runtimeconfig.googleapis.com/v1beta1/projects/projects-manager-9332b/configs/stripe/variables/secret {"name":"projects/projects-manager-9332b/configs/stripe/variables/secret","updateTime":"2025-03-28T09:52:35.156701151Z","text":"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"}
[2025-03-28T14:18:04.184Z] Validating nodejs source
⚠ functions: Runtime Node.js 18 will be deprecated on 2025-04-30 and will be decommissioned on 2025-10-31, after which you will not be able to deploy without upgrading. Consider upgrading now to avoid disruption. See https://cloud.google.com/functions/docs/runtime-support for full details on the lifecycle policy
[2025-03-28T14:18:04.909Z] > [functions] package.json contents: {
"name": "functions",
"scripts": {
"lint": "eslint --ext .js,.ts .",
"build": "tsc",
"build:watch": "tsc --watch",
"serve": "npm run build && firebase emulators:start --only functions",
"shell": "npm run build && firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "18"
},
"main": "lib/index.js",
"dependencies": {
"@google-cloud/storage": "^7.15.2",
"@types/stripe": "^8.0.417",
"firebase-admin": "^13.2.0",
"firebase-functions": "^6.3.2",
"stripe": "^17.7.0"
},
"devDependencies": {
"@types/node": "^22.13.14",
"@typescript-eslint/eslint-plugin": "^5.12.0",
"@typescript-eslint/parser": "^5.12.0",
"eslint-config-google": "^0.14.0",
"eslint-plugin-import": "^2.25.4",
"firebase-functions-test": "^3.1.0",
"typescript": "^5.8.2"
},
"private": true
}
[2025-03-28T14:18:04.909Z] Building nodejs source
i functions: Loading and analyzing source code for codebase default to determine what to deploy
[2025-03-28T14:18:04.910Z] Could not find functions.yaml. Must use http discovery
[2025-03-28T14:18:04.922Z] Found firebase-functions binary at '/home/quentin/Repos/ProjectManagerApp/functions/node_modules/.bin/firebase-functions'
Serving at port 8356

(node:37333) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
(Use node --trace-deprecation ... to show where the warning was created)

[2025-03-28T14:18:05.333Z] Got response from /__/functions.yaml {"endpoints":{"helloworld":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":null,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"httpsTrigger":{},"entryPoint":"helloworld"}},"specVersion":"v1alpha1","requiredAPIs":[],"extensions":{}}
i extensions: ensuring required API firebaseextensions.googleapis.com is enabled...
[2025-03-28T14:18:09.369Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:09.369Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:09.369Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/firebaseextensions.googleapis.com [none]
[2025-03-28T14:18:09.370Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/firebaseextensions.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:10.390Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/firebaseextensions.googleapis.com 200
[2025-03-28T14:18:10.390Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/firebaseextensions.googleapis.com [omitted]
✔ extensions: required API firebaseextensions.googleapis.com is enabled
[2025-03-28T14:18:10.390Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[2025-03-28T14:18:10.391Z] > authorizing via signed-in user ([email protected])
[2025-03-28T14:18:10.391Z] [iam] checking project projects-manager-9332b for permissions ["firebase.projects.get","firebaseextensions.instances.list"]
[2025-03-28T14:18:10.392Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:10.392Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:10.392Z] >>> [apiv2][query] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions [none]
[2025-03-28T14:18:10.392Z] >>> [apiv2][(partial)header] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:10.393Z] >>> [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["firebase.projects.get","firebaseextensions.instances.list"]}
[2025-03-28T14:18:11.415Z] <<< [apiv2][status] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions 200
[2025-03-28T14:18:11.415Z] <<< [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["firebase.projects.get","firebaseextensions.instances.list"]}
[2025-03-28T14:18:11.417Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:11.417Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:11.418Z] >>> [apiv2][query] GET https://firebaseextensions.googleapis.com/v1beta/projects/projects-manager-9332b/instances pageSize=100&pageToken=
[2025-03-28T14:18:12.421Z] <<< [apiv2][status] GET https://firebaseextensions.googleapis.com/v1beta/projects/projects-manager-9332b/instances 200
[2025-03-28T14:18:12.421Z] <<< [apiv2][body] GET https://firebaseextensions.googleapis.com/v1beta/projects/projects-manager-9332b/instances {}
i functions: preparing functions directory for uploading...
i functions: packaged /home/quentin/Repos/ProjectManagerApp/functions (89.84 KB) for uploading
[2025-03-28T14:18:12.538Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:12.539Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:12.539Z] >>> [apiv2][query] GET https://cloudfunctions.googleapis.com/v1/projects/projects-manager-9332b/locations/-/functions [none]
[2025-03-28T14:18:13.473Z] <<< [apiv2][status] GET https://cloudfunctions.googleapis.com/v1/projects/projects-manager-9332b/locations/-/functions 200
[2025-03-28T14:18:13.473Z] <<< [apiv2][body] GET https://cloudfunctions.googleapis.com/v1/projects/projects-manager-9332b/locations/-/functions {}
[2025-03-28T14:18:13.474Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:13.475Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:13.475Z] >>> [apiv2][query] GET https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/-/functions filter=environment%3D%22GEN_2%22
[2025-03-28T14:18:14.581Z] <<< [apiv2][status] GET https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/-/functions 200
[2025-03-28T14:18:14.582Z] <<< [apiv2][body] GET https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/-/functions {}
i functions: ensuring required API run.googleapis.com is enabled...
[2025-03-28T14:18:14.587Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:14.587Z] Checked if tokens are valid: true, expires at: 1743172508195
i functions: ensuring required API eventarc.googleapis.com is enabled...
[2025-03-28T14:18:14.588Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:14.589Z] Checked if tokens are valid: true, expires at: 1743172508195
i functions: ensuring required API pubsub.googleapis.com is enabled...
[2025-03-28T14:18:14.589Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:14.590Z] Checked if tokens are valid: true, expires at: 1743172508195
i functions: ensuring required API storage.googleapis.com is enabled...
[2025-03-28T14:18:14.590Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:14.590Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:14.591Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/run.googleapis.com [none]
[2025-03-28T14:18:14.591Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/run.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:14.592Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/eventarc.googleapis.com [none]
[2025-03-28T14:18:14.592Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/eventarc.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:14.596Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/pubsub.googleapis.com [none]
[2025-03-28T14:18:14.596Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/pubsub.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:14.600Z] >>> [apiv2][query] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/storage.googleapis.com [none]
[2025-03-28T14:18:14.601Z] >>> [apiv2][(partial)header] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/storage.googleapis.com x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:15.083Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/run.googleapis.com 200
[2025-03-28T14:18:15.083Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/run.googleapis.com [omitted]
✔ functions: required API run.googleapis.com is enabled
[2025-03-28T14:18:15.615Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/eventarc.googleapis.com 200
[2025-03-28T14:18:15.615Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/eventarc.googleapis.com [omitted]
✔ functions: required API eventarc.googleapis.com is enabled
[2025-03-28T14:18:15.631Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/pubsub.googleapis.com 200
[2025-03-28T14:18:15.631Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/pubsub.googleapis.com [omitted]
✔ functions: required API pubsub.googleapis.com is enabled
[2025-03-28T14:18:15.634Z] <<< [apiv2][status] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/storage.googleapis.com 200
[2025-03-28T14:18:15.635Z] <<< [apiv2][body] GET https://serviceusage.googleapis.com/v1/projects/projects-manager-9332b/services/storage.googleapis.com [omitted]
✔ functions: required API storage.googleapis.com is enabled
i functions: generating the service identity for pubsub.googleapis.com...
[2025-03-28T14:18:15.636Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:15.637Z] Checked if tokens are valid: true, expires at: 1743172508195
i functions: generating the service identity for eventarc.googleapis.com...
[2025-03-28T14:18:15.638Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:15.638Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:15.639Z] >>> [apiv2][query] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/pubsub.googleapis.com:generateServiceIdentity [none]
[2025-03-28T14:18:15.640Z] >>> [apiv2][query] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/eventarc.googleapis.com:generateServiceIdentity [none]
[2025-03-28T14:18:16.603Z] <<< [apiv2][status] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/eventarc.googleapis.com:generateServiceIdentity 200
[2025-03-28T14:18:16.604Z] <<< [apiv2][body] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/eventarc.googleapis.com:generateServiceIdentity {"name":"operations/finished.DONE_OPERATION","done":true,"response":{"@type":"type.googleapis.com/google.api.serviceusage.v1beta1.ServiceIdentity","email":"[email protected]","uniqueId":"100275806452934701369"}}
[2025-03-28T14:18:16.622Z] <<< [apiv2][status] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/pubsub.googleapis.com:generateServiceIdentity 200
[2025-03-28T14:18:16.623Z] <<< [apiv2][body] POST https://serviceusage.googleapis.com/v1beta1/projects/924673232878/services/pubsub.googleapis.com:generateServiceIdentity {"name":"operations/finished.DONE_OPERATION","done":true,"response":{"@type":"type.googleapis.com/google.api.serviceusage.v1beta1.ServiceIdentity","email":"[email protected]","uniqueId":"101516773575186179684"}}
[2025-03-28T14:18:16.630Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:16.630Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:16.631Z] >>> [apiv2][query] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b [none]
[2025-03-28T14:18:16.973Z] <<< [apiv2][status] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b 200
[2025-03-28T14:18:16.974Z] <<< [apiv2][body] GET https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b {"projectNumber":"924673232878","projectId":"projects-manager-9332b","lifecycleState":"ACTIVE","name":"projects-manager","labels":{"firebase":"enabled","firebase-core":"disabled"},"createTime":"2025-02-11T08:53:03.589462Z"}
[2025-03-28T14:18:16.977Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:16.977Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:16.978Z] >>> [apiv2][query] GET https://cloudbilling.googleapis.com/v1/projects/projects-manager-9332b/billingInfo [none]
[2025-03-28T14:18:17.943Z] <<< [apiv2][status] GET https://cloudbilling.googleapis.com/v1/projects/projects-manager-9332b/billingInfo 200
[2025-03-28T14:18:17.943Z] <<< [apiv2][body] GET https://cloudbilling.googleapis.com/v1/projects/projects-manager-9332b/billingInfo {"name":"projects/projects-manager-9332b/billingInfo","projectId":"projects-manager-9332b","billingAccountName":"billingAccounts/01F9DD-68A494-EDF077","billingEnabled":true}
[2025-03-28T14:18:17.946Z] [functions] found 1 new HTTP functions, testing setIamPolicy permission...
[2025-03-28T14:18:17.947Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:17.947Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:17.947Z] >>> [apiv2][query] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions [none]
[2025-03-28T14:18:17.948Z] >>> [apiv2][(partial)header] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions x-goog-quota-user=projects/projects-manager-9332b
[2025-03-28T14:18:17.948Z] >>> [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["cloudfunctions.functions.setIamPolicy"]}
[2025-03-28T14:18:18.141Z] <<< [apiv2][status] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions 200
[2025-03-28T14:18:18.141Z] <<< [apiv2][body] POST https://cloudresourcemanager.googleapis.com/v1/projects/projects-manager-9332b:testIamPermissions {"permissions":["cloudfunctions.functions.setIamPolicy"]}
[2025-03-28T14:18:18.141Z] [functions] found setIamPolicy permission, proceeding with deploy
[2025-03-28T14:18:18.142Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:18.142Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:18.142Z] >>> [apiv2][query] POST https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/us-central1/functions:generateUploadUrl [none]
[2025-03-28T14:18:19.087Z] <<< [apiv2][status] POST https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/us-central1/functions:generateUploadUrl 200
[2025-03-28T14:18:19.087Z] <<< [apiv2][body] POST https://cloudfunctions.googleapis.com/v2/projects/projects-manager-9332b/locations/us-central1/functions:generateUploadUrl {"uploadUrl":"https://storage.googleapis.com/gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com/573a2a9d-1103-4172-a328-653ac16d7fd5.zip?GoogleAccessId=service-924673232878@gcf-admin-robot.iam.gserviceaccount.com&Expires=1743173299&Signature=araOoK4lkvRqJ8%2Bk%2FQES4hq77%2Fwuco8ukduVorZMvvYJYReUqDqKOCOxXESW0AFf8OpA24W0TsfDjBVxJJetjsskioq%2B7eXKmVwu2eex%2FhjqcTJgKzM40W1ZoPGtGWthtVc2ZvV%2F4Cd7Oczrv8jD4i%2BaY%2BrE1fBmf7BwGx83%2FV4FNfCKle1DopyjHRfQ%2FWO0dxS8MP6%2F0PcKnzqa6ySEDsu9N4jNcDmJKAVamuE6w0kce15MivRx1043L1jl9B8iBca8l2AYuE8LBnHgm6PMCOUfnRk9JZqW%2BKCrKybjyVH%2FVnTHGev%2FJyXgRVDQIqgWURGzGrdKuc6WoQcy9ZsbPQ%3D%3D","storageSource":{"bucket":"gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com","object":"573a2a9d-1103-4172-a328-653ac16d7fd5.zip"}}
[2025-03-28T14:18:19.089Z] >>> [apiv2][query] PUT https://storage.googleapis.com/gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com/573a2a9d-1103-4172-a328-653ac16d7fd5.zip GoogleAccessId=service-924673232878%40gcf-admin-robot.iam.gserviceaccount.com&Expires=1743173299&Signature=araOoK4lkvRqJ8%2Bk%2FQES4hq77%2Fwuco8ukduVorZMvvYJYReUqDqKOCOxXESW0AFf8OpA24W0TsfDjBVxJJetjsskioq%2B7eXKmVwu2eex%2FhjqcTJgKzM40W1ZoPGtGWthtVc2ZvV%2F4Cd7Oczrv8jD4i%2BaY%2BrE1fBmf7BwGx83%2FV4FNfCKle1DopyjHRfQ%2FWO0dxS8MP6%2F0PcKnzqa6ySEDsu9N4jNcDmJKAVamuE6w0kce15MivRx1043L1jl9B8iBca8l2AYuE8LBnHgm6PMCOUfnRk9JZqW%2BKCrKybjyVH%2FVnTHGev%2FJyXgRVDQIqgWURGzGrdKuc6WoQcy9ZsbPQ%3D%3D
[2025-03-28T14:18:19.090Z] >>> [apiv2][body] PUT https://storage.googleapis.com/gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com/573a2a9d-1103-4172-a328-653ac16d7fd5.zip [stream]
[2025-03-28T14:18:20.040Z] <<< [apiv2][status] PUT https://storage.googleapis.com/gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com/573a2a9d-1103-4172-a328-653ac16d7fd5.zip 200
[2025-03-28T14:18:20.040Z] <<< [apiv2][body] PUT https://storage.googleapis.com/gcf-v2-uploads-924673232878.us-central1.cloudfunctions.appspot.com/573a2a9d-1103-4172-a328-653ac16d7fd5.zip [omitted]
✔ functions: functions folder uploaded successfully
i functions: creating Node.js 18 (2nd Gen) function helloworld(us-central1)...
[2025-03-28T14:18:20.051Z] Total Function Deployment time: 4
[2025-03-28T14:18:20.051Z] 1 Functions Deployed
[2025-03-28T14:18:20.051Z] 1 Functions Errored
[2025-03-28T14:18:20.051Z] 0 Function Deployments Aborted
[2025-03-28T14:18:20.052Z] Average Function Deployment time: 2

Functions deploy had errors with the following functions:
helloworld(us-central1)
[2025-03-28T14:18:20.053Z] Not printing URL for HTTPS function. Typically this means it didn't match a filter or we failed deployment
[2025-03-28T14:18:20.055Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:20.055Z] Checked if tokens are valid: true, expires at: 1743172508195
[2025-03-28T14:18:20.055Z] >>> [apiv2][query] GET https://artifactregistry.googleapis.com/v1/projects/projects-manager-9332b/locations/us-central1/repositories/gcf-artifacts [none]
[2025-03-28T14:18:21.040Z] <<< [apiv2][status] GET https://artifactregistry.googleapis.com/v1/projects/projects-manager-9332b/locations/us-central1/repositories/gcf-artifacts 404
[2025-03-28T14:18:21.040Z] <<< [apiv2][body] GET https://artifactregistry.googleapis.com/v1/projects/projects-manager-9332b/locations/us-central1/repositories/gcf-artifacts {"error":{"code":404,"message":"Requested entity was not found.","status":"NOT_FOUND"}}
[2025-03-28T14:18:21.040Z] Failed to check artifact cleanup policy for region us-central1: Request to https://artifactregistry.googleapis.com/v1/projects/projects-manager-9332b/locations/us-central1/repositories/gcf-artifacts had HTTP Error: 404, Requested entity was not found. {"name":"FirebaseError","children":[],"context":{"body":{"error":{"code":404,"message":"Requested entity was not found.","status":"NOT_FOUND"}},"response":{"statusCode":404}},"exit":1,"message":"Request to https://artifactregistry.googleapis.com/v1/projects/projects-manager-9332b/locations/us-central1/repositories/gcf-artifacts had HTTP Error: 404, Requested entity was not found.","status":404}
[2025-03-28T14:18:21.041Z] Functions deploy failed.
[2025-03-28T14:18:21.041Z] {}
[2025-03-28T14:18:21.042Z] TypeError: Cannot read properties of null (reading 'length')
at Object.formatServiceAccount (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/gcp/proto.js:95:24)
at /home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/gcp/cloudfunctionsv2.js:196:122
at Object.convertIfPresent (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/gcp/proto.js:45:25)
at Object.functionFromEndpoint (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/gcp/cloudfunctionsv2.js:196:11)
at Fabricator.createV2Function (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:233:35)
at Fabricator.createEndpoint (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:137:24)
at /home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:103:64
at handle (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:89:23)
at Fabricator.applyChangeset (/home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:103:26)
at /home/quentin/.nvm/versions/node/v22.13.0/lib/node_modules/firebase-tools/lib/deploy/functions/release/fabricator.js:69:40

Error: There was an error deploying functions

@aalej
Copy link
Contributor

aalej commented Mar 28, 2025

Thanks for the detailed report @kantino789. It looks like this is a similar issue to #8382. I’ll go ahead and close this since this looks like a duplicate. Please refer to the other tickets for any updates. Also, to better track the issue, could you please leave a comment or a thumbs up on the original report?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants