@@ -54,14 +54,59 @@ set APP_ENV_FILE=%ROOT_DIR%\src\App\.env
5454) > " %APP_ENV_FILE% "
5555echo Updated src/App/.env with APP_API_BASE_URL
5656
57- REM Copy .env to workshop
58- set MICROHACK_ENV_FILE = %ROOT_DIR% \workshop\docs\workshop\.env
59- copy /Y " %ENV_FILE% " " %MICROHACK_ENV_FILE% "
57+ @ REM REM Copy .env to workshop
58+ @ REM set MICROHACK_ENV_FILE=%ROOT_DIR%\workshop\docs\workshop\.env
59+ @ REM copy /Y "%ENV_FILE%" "%MICROHACK_ENV_FILE%"
60+ @ REM if errorlevel 1 (
61+ @ REM echo Failed to copy .env to workshop/docs/workshop
62+ @ REM exit /b 1
63+ @ REM )
64+ @ REM echo Copied .env to workshop/docs/workshop
65+
66+ REM Define paths
67+ set " SOURCE_ENV_FILE = %ENV_FILE% "
68+ set " TARGET_ENV_FILE = %ROOT_DIR% \workshop\docs\workshop\.env"
69+ set " TEMP_MERGED_FILE = %TEMP% \merged_env.tmp"
70+
71+ REM Ensure the source env file exists
72+ if not exist " %SOURCE_ENV_FILE% " (
73+ echo Source .env file not found at %SOURCE_ENV_FILE%
74+ exit /b 1
75+ )
76+
77+ REM Create temporary merged file
78+ copy /Y " %TARGET_ENV_FILE% " " %TEMP_MERGED_FILE% " > nul 2 >& 1
79+
80+ REM Read lines from SOURCE_ENV_FILE
81+ for /f " usebackq tokens=* delims=" %%A in (" %SOURCE_ENV_FILE% " ) do (
82+ set " line = %%A "
83+
84+ REM Skip empty lines or comments
85+ if not " !line! " == " " if not " !line:~0 ,1 ! " == " #" (
86+
87+ REM Extract variable name (text before '=')
88+ for /f " tokens=1 delims==" %%B in (" !line! " ) do (
89+ set " var = %%B "
90+
91+ REM Check if variable already exists in TARGET_ENV_FILE
92+ findstr /b /i " %%B =" " %TARGET_ENV_FILE% " > nul
93+ if errorlevel 1 (
94+ echo !line! >> " %TEMP_MERGED_FILE% "
95+ ) else (
96+ echo Skipping existing variable: %%B
97+ )
98+ )
99+ )
100+ )
101+
102+ REM Move merged file back to .env
103+ move /Y " %TEMP_MERGED_FILE% " " %TARGET_ENV_FILE% " > nul
60104if errorlevel 1 (
61- echo Failed to copy .env to workshop/docs/workshop
105+ echo Failed to update .env file
62106 exit /b 1
63107)
64- echo Copied .env to workshop/docs/workshop
108+
109+ echo Successfully merged .env variables.
65110
66111REM Authenticate with Azure
67112echo Checking Azure login status...
0 commit comments