From 09b0f566f688b047dfbc2ca775abd654566591d5 Mon Sep 17 00:00:00 2001 From: Haitao Pan Date: Thu, 6 Nov 2025 10:28:35 +0800 Subject: [PATCH] feat(dashboard): add REGION env variable support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Enable REGION environment variable to control regional config overrides - Prioritize RUNTIME_ENV and REGION over file-based configuration - Supports: RUNTIME_ENV=prod|sit and REGION=cn|global|default - Loads from dashboard/config/runtime-service-config.{env}.yaml - Fixes configuration loading with Turbopack compatibility 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- dashboard/server/runtime-loader.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/dashboard/server/runtime-loader.ts b/dashboard/server/runtime-loader.ts index 66165ca..2c93464 100644 --- a/dashboard/server/runtime-loader.ts +++ b/dashboard/server/runtime-loader.ts @@ -260,9 +260,13 @@ export function readRuntimeEnvSettings(): RuntimeEnvSettings { if (runtimeEnv) { const environment = normalizeEnvironmentValue(runtimeEnv) if (environment) { + // 检查 REGION 环境变量 + const regionEnv = process.env.REGION + const region = regionEnv ? normalizeRegionValue(regionEnv) || 'default' : 'default' + runtimeEnvSettingsCache = { environment, - region: 'default', + region, detectedBy: 'env:RUNTIME_ENV', } return runtimeEnvSettingsCache @@ -307,12 +311,14 @@ export function readRuntimeEnvSettings(): RuntimeEnvSettings { } const environment = normalizeEnvironmentValue(parsed.environment) - const region = normalizeRegionValue(parsed.region) + const regionEnv = process.env.REGION + const regionFromFile = normalizeRegionValue(parsed.region) + const region = regionEnv ? (normalizeRegionValue(regionEnv) || 'default') : (regionFromFile ?? 'default') if (environment) { runtimeEnvSettingsCache = { environment, - region: region ?? 'default', + region, detectedBy: candidate.detectedBy, } return runtimeEnvSettingsCache