Closed
Description
Related issues
[REQUIRED] Version info
node:
22.9.0
firebase-functions:
6.1.2
firebase-tools:
13.29.1
firebase-admin:
13.0.1
[REQUIRED] Test case

Node v22 support for 1st generation functions has disappeared.
[REQUIRED] Steps to reproduce
- Specify engines (node 22) in
package.json
:
"engines": {
"node": "22"
},
- Use the 1st and 2nd generation functions. (Some functions cannot be migrated to the 2nd generation at the moment, for example authentication triggers.)
- Just run command:
firebase deploy -m "message" --only functions --force
[REQUIRED] Expected behavior
The functions should be deployed in the same way as it happened from August to November 2024. I have updated the engine from v20 to v22 in August 2024
[REQUIRED] Actual behavior


{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"status": {
"code": 3,
"message": "runtime: Runtime validation errors: [error_code: INVALID_RUNTIME\nmessage: \"Runtime \\\"nodejs22\\\" is not supported on GCF Gen1\"\n]"
},
"authenticationInfo": {
"principalEmail": "[email protected]",
"serviceAccountKeyName": "...",
"principalSubject": "serviceAccount:[email protected]"
},
"requestMetadata": {
"callerIp": "40.75.95.79",
"callerSuppliedUserAgent": "FirebaseCLI/13.29.1,gzip(gfe),gzip(gfe)",
"requestAttributes": {
"time": "2024-12-14T11:08:18.672421Z",
"auth": {}
},
"destinationAttributes": {}
},
"serviceName": "cloudfunctions.googleapis.com",
"methodName": "google.cloud.functions.v1.CloudFunctionsService.UpdateFunction",
"authorizationInfo": [
{
"resource": "projects/ireceipt-pro/locations/us-central1/functions/triggers_auth_user_delete",
"permission": "cloudfunctions.functions.update",
"granted": true,
"resourceAttributes": {},
"permissionType": "ADMIN_WRITE"
}
],
"resourceName": "projects/ireceipt-pro/locations/us-central1/functions/triggers_auth_user_delete",
"request": {
"function": {
"entryPoint": "triggers_auth_user_delete",
"timeout": "60s",
"name": "projects/ireceipt-pro/locations/us-central1/functions/triggers_auth_user_delete",
"eventTrigger": {
"resource": "projects/ireceipt-pro",
"eventType": "providers/firebase.auth/eventTypes/user.delete"
},
"runtime": "nodejs22",
"availableMemoryMb": 256,
"labels": {
"firebase-functions-hash": "b18866339b3181ec0aa270cdc97e69a4427c82f6",
"deployment-tool": "cli-firebase"
},
"sourceUploadUrl": "...",
"dockerRegistry": "ARTIFACT_REGISTRY"
},
"@type": "type.googleapis.com/google.cloud.functions.v1.UpdateFunctionRequest",
"updateMask": "name,sourceUploadUrl,entryPoint,runtime,dockerRegistry,labels,eventTrigger.eventType,eventTrigger.resource,eventTrigger.failurePolicy,minInstances,maxInstances,ingressSettings,environmentVariables,serviceAccountEmail,availableMemoryMb,timeout,vpcConnector,vpcConnectorEgressSettings,sourceToken,buildEnvironmentVariables"
},
"resourceLocation": {
"currentLocations": [
"us-central1"
]
}
},
"insertId": "mj9i9de25o2r",
"resource": {
"type": "cloud_function",
"labels": {
"region": "us-central1",
"function_name": "triggers_auth_user_delete",
"project_id": "ireceipt-pro"
}
},
"timestamp": "2024-12-14T11:08:18.513711Z",
"severity": "ERROR",
"logName": "projects/ireceipt-pro/logs/cloudaudit.googleapis.com%2Factivity",
"receiveTimestamp": "2024-12-14T11:08:19.081159810Z"
}
Were you able to successfully deploy your functions?
No, this requires rolling back the platform to node v20.