diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d993b0ba93..af660938afa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,4 +3,5 @@ - Fixed an issue preventing Angular apps using ng-deploy from being emulated or deployed. (#6584) - Warn if a Web Framework is outside a well known version range on deploy/emulate. (#6562) - Use Web Framework's well known version range in `firebase init hosting`. (#6562) +- Permit use of more SSR regions in Web Frameworks deploys. (#6086) - Limit Web Framework's generated Cloud Function name to 23 characters, fixing deploys for some. (#6260) diff --git a/src/frameworks/constants.ts b/src/frameworks/constants.ts index daac71889a3..1d0376ed018 100644 --- a/src/frameworks/constants.ts +++ b/src/frameworks/constants.ts @@ -40,11 +40,35 @@ export const VALID_LOCALE_FORMATS = [/^ALL_[a-z]+$/, /^[a-z]+_ALL$/, /^[a-z]+(_[ export const DEFAULT_REGION = "us-central1"; export const ALLOWED_SSR_REGIONS = [ - { name: "us-central1 (Iowa)", value: "us-central1" }, - { name: "us-west1 (Oregon)", value: "us-west1" }, - { name: "us-east1 (South Carolina)", value: "us-east1" }, - { name: "europe-west1 (Belgium)", value: "europe-west1" }, - { name: "asia-east1 (Taiwan)", value: "asia-east1" }, + { name: "us-central1 (Iowa)", value: "us-central1", recommended: true }, + { name: "us-east1 (South Carolina)", value: "us-east1", recommended: true }, + { name: "us-east4 (Northern Virginia)", value: "us-east4" }, + { name: "us-west1 (Oregon)", value: "us-west1", recommended: true }, + { name: "us-west2 (Los Angeles)", value: "us-west2" }, + { name: "us-west3 (Salt Lake City)", value: "us-west3" }, + { name: "us-west4 (Las Vegas)", value: "us-west4" }, + { name: "asia-east1 (Taiwan)", value: "asia-east1", recommended: true }, + { name: "asia-east2 (Hong Kong)", value: "asia-east2" }, + { name: "asia-northeast1 (Tokyo)", value: "asia-northeast1" }, + { name: "asia-northeast2 (Osaka)", value: "asia-northeast2" }, + { name: "asia-northeast3 (Seoul)", value: "asia-northeast3" }, + { name: "asia-south1 (Mumbai)", value: "asia-south1" }, + { name: "asia-south2 (Delhi)", value: "asia-south2" }, + { name: "asia-southeast1 (Singapore)", value: "asia-southeast1" }, + { name: "asia-southeast2 (Jakarta)", value: "asia-southeast2" }, + { name: "australia-southeast1 (Sydney)", value: "australia-southeast1" }, + { name: "australia-southeast2 (Melbourne)", value: "australia-southeast2" }, + { name: "europe-central2 (Warsaw)", value: "europe-central2" }, + { name: "europe-north1 (Finland)", value: "europe-north1" }, + { name: "europe-west1 (Belgium)", value: "europe-west1", recommended: true }, + { name: "europe-west2 (London)", value: "europe-west2" }, + { name: "europe-west3 (Frankfurt)", value: "europe-west3" }, + { name: "europe-west4 (Netherlands)", value: "europe-west4" }, + { name: "europe-west6 (Zurich)", value: "europe-west6" }, + { name: "northamerica-northeast1 (Montreal)", value: "northamerica-northeast1" }, + { name: "northamerica-northeast2 (Toronto)", value: "northamerica-northeast2" }, + { name: "southamerica-east1 (São Paulo)", value: "southamerica-east1" }, + { name: "southamerica-west1 (Santiago)", value: "southamerica-west1" }, ]; export const I18N_ROOT = "/"; diff --git a/src/init/features/hosting/index.ts b/src/init/features/hosting/index.ts index 3b6a298d0dd..c6d31c08135 100644 --- a/src/init/features/hosting/index.ts +++ b/src/init/features/hosting/index.ts @@ -160,7 +160,7 @@ export async function doSetup(setup: any, config: any, options: Options): Promis type: "list", message: "In which region would you like to host server-side content, if applicable?", default: DEFAULT_REGION, - choices: ALLOWED_SSR_REGIONS, + choices: ALLOWED_SSR_REGIONS.filter((region) => region.recommended), }, setup.hosting );