From a3d6b458b1ff795edb914a2b6e3466271ddd76ea Mon Sep 17 00:00:00 2001 From: Jose Olarte III Date: Thu, 18 Sep 2025 22:38:53 +0800 Subject: [PATCH] fix: load environment-specific .env files in iOS/Android/Electron build scripts - iOS, Android, and Electron build scripts now load .env.development, .env.test, .env.production files - Previously only loaded generic .env file which doesn't exist - Ensures consistent image server URL across all build targets - Fixes issue where build:ios:dev used production image URL instead of test URL - Aligns with web build script behavior for environment variable precedence Resolves inconsistent VITE_DEFAULT_IMAGE_API_SERVER values between build targets. --- scripts/build-android.sh | 14 ++++++++++++-- scripts/build-electron.sh | 14 +++++++++++++- scripts/build-ios.sh | 14 ++++++++++++-- 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/scripts/build-android.sh b/scripts/build-android.sh index f57f70c7..2d978712 100755 --- a/scripts/build-android.sh +++ b/scripts/build-android.sh @@ -351,8 +351,18 @@ fi # Setup application directories setup_app_directories -# Load environment from .env file if it exists -load_env_file ".env" +# Load environment-specific .env file if it exists +env_file=".env.$BUILD_MODE" +if [ -f "$env_file" ]; then + load_env_file "$env_file" +else + log_debug "No $env_file file found, using default environment" +fi + +# Load .env file if it exists (fallback) +if [ -f ".env" ]; then + load_env_file ".env" +fi # Handle clean-only mode if [ "$CLEAN_ONLY" = true ]; then diff --git a/scripts/build-electron.sh b/scripts/build-electron.sh index 96213afa..ef370d00 100755 --- a/scripts/build-electron.sh +++ b/scripts/build-electron.sh @@ -341,7 +341,19 @@ main_electron_build() { # Setup environment setup_build_env "electron" "$BUILD_MODE" setup_app_directories - load_env_file ".env" + + # Load environment-specific .env file if it exists + env_file=".env.$BUILD_MODE" + if [ -f "$env_file" ]; then + load_env_file "$env_file" + else + log_debug "No $env_file file found, using default environment" + fi + + # Load .env file if it exists (fallback) + if [ -f ".env" ]; then + load_env_file ".env" + fi # Step 1: Clean Electron build artifacts clean_electron_artifacts diff --git a/scripts/build-ios.sh b/scripts/build-ios.sh index 511358d5..fd4e9a39 100755 --- a/scripts/build-ios.sh +++ b/scripts/build-ios.sh @@ -324,8 +324,18 @@ fi # Setup application directories setup_app_directories -# Load environment from .env file if it exists -load_env_file ".env" +# Load environment-specific .env file if it exists +env_file=".env.$BUILD_MODE" +if [ -f "$env_file" ]; then + load_env_file "$env_file" +else + log_debug "No $env_file file found, using default environment" +fi + +# Load .env file if it exists (fallback) +if [ -f ".env" ]; then + load_env_file ".env" +fi # Validate iOS environment validate_ios_environment