diff --git a/devbox/cli/devbox b/devbox/cli/devbox index 3d16b18..1870f6c 100755 --- a/devbox/cli/devbox +++ b/devbox/cli/devbox @@ -685,10 +685,6 @@ if [[ "$USE_LOCAL_COMPONENT_VAL" == "true" ]]; then export VITE_PROXY_API_CHAT_URL=http://localhost:8012 EOFinner - - # Update set VITE_PROXY_WEBSOCKET_CHAT_URL and VITE_PROXY_API_CHAT_URL in frontend/.env.development - sed -i "s|VITE_PROXY_WEBSOCKET_CHAT_URL=.*|VITE_PROXY_WEBSOCKET_CHAT_URL=ws://localhost:8012|g" /home/devbox/freeleaps/frontend/freeleaps/.env.development - sed -i "s|VITE_PROXY_API_CHAT_URL=.*|VITE_PROXY_API_CHAT_URL=http://localhost:8012|g" /home/devbox/freeleaps/frontend/freeleaps/.env.development else # Online component environment variables echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Use online component dev environment." @@ -722,12 +718,20 @@ EOFinner echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Update VITE_PROXY_WEBSOCKET_CHAT_URL and VITE_PROXY_API_CHAT_URL in frontend/.env.development" sed -i "s|VITE_PROXY_WEBSOCKET_CHAT_URL=.*|VITE_PROXY_WEBSOCKET_CHAT_URL=wss://freeleaps-alpha.com|g" /home/devbox/freeleaps/frontend/freeleaps/.env.development sed -i "s|VITE_PROXY_API_CHAT_URL=.*|VITE_PROXY_API_CHAT_URL=https://freeleaps-alpha.com|g" /home/devbox/freeleaps/frontend/freeleaps/.env.development - sed -i 's#http://freeleaps-chat:8012#https://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/freeleaps/nginx_docker.conf + + git update-index --skip-worktree /home/devbox/freeleaps/frontend/freeleaps/.env.development echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Online component dev environment variables set." fi if true ; then + # Git configuration to skip worktree for .env file + pushd /home/devbox/freeleaps > /dev/null + git config --global core.sparseCheckout true + git config --global --add safe.directory /home/devbox/freeleaps + + git update-index --skip-worktree /home/devbox/freeleaps/frontend/freeleaps/.env.development + # Load the environment variables source /home/devbox/freeleaps/apps/.env @@ -778,7 +782,6 @@ if true ; then ##################################### pushd /home/devbox/freeleaps/frontend > /dev/null - source /home/devbox/freeleaps/apps/.env npm update @@ -808,19 +811,7 @@ if true ; then # 4️⃣ Build the frontend pnpm run build - - # 5️⃣ Check git status - echo - echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Checking git status..." - echo - - pushd /home/devbox/freeleaps > /dev/null - git config --global --add safe.directory /home/devbox/freeleaps - git status -s - - echo - echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Git status check completed." - echo + popd > /dev/null fi EOF @@ -1206,11 +1197,10 @@ docker exec -i "$DEVBOX_NAME" bash < /dev/null + git config --global --add safe.directory /home/devbox/freeleaps + git status -s + if [ -n "\$(git status --porcelain)" ]; then + echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') Uncommitted changes found. Resetting..." + git reset --hard HEAD + else + echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') No uncommitted changes found." + fi + echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') Checking for untracked files..." + EOF } @@ -1396,21 +1394,33 @@ reset_freeleaps_repo() { pushd /home/devbox/freeleaps > /dev/null git config --global --add safe.directory /home/devbox/freeleaps git reset --hard HEAD + + echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Checking for uncommitted changes..." + git status -s + if [ -n "\$(git status --porcelain)" ]; then + echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Uncommitted changes found. Resetting..." + git reset --hard HEAD + else + echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') No uncommitted changes found." + fi + echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') Checking for untracked files..." + popd > /dev/null echo "[INIT] \$(date '+%Y-%m-%d %H:%M:%S') FreeLeaps repository reset completed." - USE_LOCAL_COMPONENT_VAL="false" + USE_LOCAL_COMPONENT_FLAG="/home/devbox/.use-local-component" + USE_LOCAL_COMPONENT_VAL="false" if [ -f "\$USE_LOCAL_COMPONENT_FLAG" ]; then # Read the value from the file USE_LOCAL_COMPONENT_VAL=\$(cat "\$USE_LOCAL_COMPONENT_FLAG") fi -if [[ "\$USE_LOCAL_COMPONENT_VAL" == "true" ]]; then - echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') Use local component dev environment." + + if [[ "\$USE_LOCAL_COMPONENT_VAL" == "true" ]]; then + echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') Use local component dev environment." else echo "[FRONTEND] \$(date '+%Y-%m-%d %H:%M:%S') Use online component dev environment." - sed -i 's#VITE_PROXY_WEBSOCKET_CHAT_URL=.*#VITE_PROXY_WEBSOCKET_CHAT_URL=wss://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/node_modules/@project/freeleaps/.env.development - sed -i 's#VITE_PROXY_API_CHAT_URL=http://localhost:8012#VITE_PROXY_API_CHAT_URL=https://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/node_modules/@project/freeleaps/.env.development - sed -i 's#http://freeleaps-chat:8012#https://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/node_modules/@project/freeleaps/nginx_docker.conf + sed -i 's#VITE_PROXY_WEBSOCKET_CHAT_URL=.*#VITE_PROXY_WEBSOCKET_CHAT_URL=wss://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/freeleaps/.env.development + sed -i 's#VITE_PROXY_API_CHAT_URL=http://localhost:8012#VITE_PROXY_API_CHAT_URL=https://freeleaps-alpha.com#g' /home/devbox/freeleaps/frontend/freeleaps/.env.development fi EOF @@ -1852,6 +1862,7 @@ devbox_init_command() { pushd "$WORKING_HOME" > /dev/null log_info "Git cloning freeleaps.com:3443/products/freeleaps.git to $FREELEAPS_DIR" git clone --depth 5 $FRONTEND_GIT_URL + else pushd "$FREELEAPS_DIR" > /dev/null # Check $WORKING_HOME/freeleaps exists and it is a git repository, if not git clone it @@ -1872,6 +1883,7 @@ devbox_init_command() { git pull fi + popd > /dev/null fi else