chore: init bj_power monorepo (dashboard/mes/wms/wms_client/workstation), clear subproject git metadata and align naming to folder names
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
@echo off
|
||||
setlocal enabledelayedexpansion
|
||||
|
||||
chcp 65001 >nul
|
||||
|
||||
set "EXE_NAME=bj_power_mes"
|
||||
set "OUTPUT_DIR=.\bin"
|
||||
set "GOOS=windows"
|
||||
set "GOARCH=amd64"
|
||||
set "VERSION=dev"
|
||||
|
||||
for /f "tokens=*" %%a in ('git rev-parse --short HEAD 2^>nul') do set "COMMIT=%%a"
|
||||
if not defined COMMIT set "COMMIT=unknown"
|
||||
|
||||
for /f "tokens=*" %%a in ('powershell -Command "Get-Date -Format 'yyyy-MM-dd_HH:mm:ss'"') do set "BUILD_TIME=%%a"
|
||||
|
||||
set "LDFLAGS=-s -w -H=windowsgui -X main.Version=%VERSION% -X main.Commit=%COMMIT% -X main.BuildTime=%BUILD_TIME%"
|
||||
set "BUILD_FLAGS=-trimpath"
|
||||
|
||||
echo Step 1: Build frontend...
|
||||
cd frontend
|
||||
call npm run build
|
||||
if errorlevel 1 (
|
||||
echo Frontend build failed
|
||||
exit /b 1
|
||||
)
|
||||
cd ..
|
||||
|
||||
echo Step 2: Copy frontend output to public/ ...
|
||||
if exist "public" rmdir /s /q "public"
|
||||
mkdir "public"
|
||||
xcopy "frontend\dist\*" "public\" /E /I /Y >nul 2>&1
|
||||
|
||||
echo Step 3: Clean up...
|
||||
if exist "%OUTPUT_DIR%" rmdir /s /q "%OUTPUT_DIR%"
|
||||
if not exist "%OUTPUT_DIR%" mkdir "%OUTPUT_DIR%"
|
||||
|
||||
echo Step 4: Build Go binary...
|
||||
set "CGO_ENABLED=0"
|
||||
go build %BUILD_FLAGS% -ldflags "%LDFLAGS%" -o "%OUTPUT_DIR%\%EXE_NAME%.exe" .
|
||||
if errorlevel 1 (
|
||||
echo Go build failed
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo Step 5: Copy config files...
|
||||
xcopy ".\etc" "%OUTPUT_DIR%\etc" /I /Y >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo Copy config files failed
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
echo Build completed: %OUTPUT_DIR%\%EXE_NAME%.exe
|
||||
endlocal
|
||||
Reference in New Issue
Block a user