firebase-tools: Cloud Run region `europe-west4` is not supported?
[REQUIRED] Environment info
firebase-tools: 7.15.1
Platform: macOS
[REQUIRED] Test case
"hosting": {
"public": "dist/browser",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"run": {
"serviceId": "vision",
"region": "europe-west4"
}
}
]
}

[REQUIRED] Steps to reproduce
$ firebase deploy --only hosting --debug
[2020-03-22T20:56:03.997Z] ---------------------------------------------------------------------- [2020-03-22T20:56:03.999Z] Command: /Users/michael/.nvm/versions/node/v10.15.1/bin/node /Users/michael/.nvm/versions/node/v10.15.1/bin/firebase deploy --only hosting --debug [2020-03-22T20:56:04.000Z] CLI Version: 7.15.1 [2020-03-22T20:56:04.000Z] Platform: darwin [2020-03-22T20:56:04.000Z] Node Version: v10.15.1 [2020-03-22T20:56:04.003Z] Time: Sun Mar 22 2020 21:56:04 GMT+0100 (Central European Standard Time) [2020-03-22T20:56:04.003Z] ---------------------------------------------------------------------- [2020-03-22T20:56:04.003Z] [2020-03-22T20:56:04.042Z] > 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”] [2020-03-22T20:56:04.042Z] > authorizing via signed-in user [2020-03-22T20:56:04.042Z] [iam] checking project vision-88888 for permissions [“firebase.projects.get”,“firebasehosting.sites.update”] [2020-03-22T20:56:04.044Z] >>> HTTP REQUEST POST https://cloudresourcemanager.googleapis.com/v1/projects/vision-88888:testIamPermissions permissions=[firebase.projects.get, firebasehosting.sites.update] [2020-03-22T20:56:04.965Z] <<< HTTP RESPONSE 200 content-type=application/json; charset=UTF-8, vary=X-Origin, Referer, Origin,Accept-Encoding, date=Sun, 22 Mar 2020 20:56:04 GMT, server=ESF, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, server-timing=gfet4t7; dur=668, alt-svc=quic=“:443”; ma=2592000; v=“46,43”,h3-Q050=“:443”; ma=2592000,h3-Q049=“:443”; ma=2592000,h3-Q048=“:443”; ma=2592000,h3-Q046=“:443”; ma=2592000,h3-Q043=“:443”; ma=2592000,h3-T050=“:443”; ma=2592000, accept-ranges=none, transfer-encoding=chunked [2020-03-22T20:56:04.967Z] >>> HTTP REQUEST GET https://firebase.googleapis.com/v1beta1/projects/vision-88888
[2020-03-22T20:56:05.231Z] <<< HTTP RESPONSE 200 content-type=application/json; charset=UTF-8, vary=X-Origin, Referer, Origin,Accept-Encoding, date=Sun, 22 Mar 2020 20:56:05 GMT, server=ESF, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, alt-svc=quic=“:443”; ma=2592000; v=“46,43”,h3-Q050=“:443”; ma=2592000,h3-Q049=“:443”; ma=2592000,h3-Q048=“:443”; ma=2592000,h3-Q046=“:443”; ma=2592000,h3-Q043=“:443”; ma=2592000,h3-T050=“:443”; ma=2592000, accept-ranges=none, transfer-encoding=chunked
=== Deploying to ‘vision-88888’…
i deploying hosting
[2020-03-22T20:56:09.529Z] >>> HTTP REQUEST POST https://firebasehosting.googleapis.com/v1beta1/sites/vision-88888/versions
rewrites=[glob=**, region=europe-west4, serviceId=vision], deployment-tool=cli-firebase
[2020-03-22T20:56:10.509Z] <<< HTTP RESPONSE 400 vary=X-Origin, Referer, Origin,Accept-Encoding, content-type=application/json; charset=UTF-8, date=Sun, 22 Mar 2020 20:56:10 GMT, server=ESF, cache-control=private, x-xss-protection=0, x-frame-options=SAMEORIGIN, x-content-type-options=nosniff, alt-svc=quic=“:443”; ma=2592000; v=“46,43”,h3-Q050=“:443”; ma=2592000,h3-Q049=“:443”; ma=2592000,h3-Q048=“:443”; ma=2592000,h3-Q046=“:443”; ma=2592000,h3-Q043=“:443”; ma=2592000,h3-T050=“:443”; ma=2592000, accept-ranges=none, transfer-encoding=chunked
[2020-03-22T20:56:10.510Z] <<< HTTP RESPONSE BODY code=400, message=Cloud Run region europe-west4 is not supported., status=INVALID_ARGUMENT
Error: HTTP Error: 400, Cloud Run region europe-west4 is not supported.
[2020-03-22T20:56:10.515Z] Error Context: {
“body”: {
“error”: {
“code”: 400,
“message”: “Cloud Run region europe-west4 is not supported.”,
“status”: “INVALID_ARGUMENT”
}
},
“response”: {
“statusCode”: 400,
“body”: {
“error”: {
“code”: 400,
“message”: “Cloud Run region europe-west4 is not supported.”,
“status”: “INVALID_ARGUMENT”
}
},
“headers”: {
“vary”: “X-Origin, Referer, Origin,Accept-Encoding”,
“content-type”: “application/json; charset=UTF-8”,
“date”: “Sun, 22 Mar 2020 20:56:10 GMT”,
“server”: “ESF”,
“cache-control”: “private”,
“x-xss-protection”: “0”,
“x-frame-options”: “SAMEORIGIN”,
“x-content-type-options”: “nosniff”,
“alt-svc”: “quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000”,
“accept-ranges”: “none”,
“transfer-encoding”: “chunked”
},
“request”: {
“uri”: {
“protocol”: “https:”,
“slashes”: true,
“auth”: null,
“host”: “firebasehosting.googleapis.com”,
“port”: 443,
“hostname”: “firebasehosting.googleapis.com”,
“hash”: null,
“search”: null,
“query”: null,
“pathname”: “/v1beta1/sites/vision-88888/versions”,
“path”: “/v1beta1/sites/vision-88888/versions”,
“href”: “https://firebasehosting.googleapis.com/v1beta1/sites/vision-88888/versions”
},
“method”: “POST”
}
}
}
[REQUIRED] Expected behavior
Deploy and redirect to europe-west4
[REQUIRED] Actual behavior
See error.
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 19 (7 by maintainers)
@merlinnot I don’t think that’s correct. Firebase Hosting hosts static files using a global CDN, although how it does routing to Cloud Run is not completely clear to me.
So to answer my own question, I literally just changed my
firebase.jsonfile to see what regions are available based on the error messages. Hopefully someone finds this useful.Firebase Hosting to Cloud Run rewrite availability
Google/Firebase is constantly updating their infrastructure, so this is only accurate as of May 8th, 2020.
Available
Not available
While that means you might be able to host CR or functions closer to you, the fact its proxied through Firebase somewhere else (US or Europe) defeats the purpose, no? You’d get the latency of US or Europe plus the latency from there to your function even though the function runs close to you.
In addition there’s this latency issue eg. for asia-northeast1 that they acknowledge but I haven’t seen anything about it being fixed. https://cloud.google.com/run/docs/issues#latency-domains Because of all this and wanting to use Firebase, I’m thinking of hosting in us-central1 even though I’m in Australia.
Context: I’m an engineer on Firebase Hosting.
I definitely hear the feedback that having a solid list somewhere of what Cloud Run regions are available would be useful. Unfortunately, it requires a smidge of manual work to make new regions available so we can’t quite point to the Cloud Run docs and say “all these!”, though we’d like to.
It’s also correct (as someone pointed out) that Cloud Functions for Firebase integrations are restricted to
us-central1and Cloud Run does not have that restriction. We’re actively looking into/working on making more Cloud Function regions available, but there’s a number of moving parts to make sure that Functions in (for example) Asia don’t require multiple round trips around the world when a user makes a request from the US. We really want this to be a smooth thing to integrate and have great performance, so we’re making sure to do it right. (FWIW, integrations with Cloud Run do have this latency penalty today.)That all said, I have it on pretty good authority that these are the Cloud Run regions that are currently available. We’ll have to see about making this official Firebase docs in the near future, but for folks who land here and are curious, this should be a good answer/resource (this list was recently updated, so it should be fairly up to date):
Available Cloud Run regions for integration with Firebase Hosting (2020-01-06)
* Pricing (and more) information for Cloud Run is available in the Cloud Run docs: https://cloud.google.com/run/docs/locations
@buzzware hopefully firebase hosting region available for all zones in 2020. they responded in FIrebase AMA.
Hm, that’s right. You can actually specify a region in Firebase Hosting for Cloud Run, didn’t know that.