samba/bin/build_release.cmd

52 lines
2.4 KiB
Batchfile
Raw Normal View History

2025-06-04 09:51:39 +08:00
@echo off
:: 获取Git提交哈希
for /f "delims=" %%i in ('git rev-parse HEAD') do set GIT_COMMIT_HASH=%%i
:: 获取Git分支名称
for /f "delims=" %%i in ('git branch --show-current') do set GIT_BRANCH=%%i
set DingAccessToken=9802639f5dea7dd4aaff98a8f264b98c224f90ceeed3c26b438534e3a79222b1
set DingSecret=SECffd7d2afe9d0590fd04e36a0efa44d73553fb8f702eb1690e579996aec6c1386
:: 获取编译时间
::setlocal enabledelayedexpansion
:: 获取当前日期和时间,并格式化为 YYYYMMDDHHMMSS
for /f "tokens=*" %%i in ('powershell -command "Get-Date -Format yyyyMMddHHmmss"') do (
set BuildDate=%%i
)
:: 输出为Go链接器标志格式
echo -X main.GitCommitHash=%GIT_COMMIT_HASH%
echo -X main.GitBranch=%GIT_BRANCH%
echo -X main.BuildDate=%BuildDate%
echo -X main.DingAccessToken=%DingAccessToken%
echo -X main.DingSecret=%DingSecret%
::endlocal
set GOARCH=amd64
set GOOS=linux
set CGO_ENABLED=0
cd ../server/truco
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/truco
cd ../cacheta
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/cacheta
cd ../db
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/sambadb
cd ../clickhouse
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/clickhousedb
cd ../hall
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/hall
cd ../club
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/club
cd ../other
go build -ldflags "-X main.GitBranch=%GIT_BRANCH% -X main.GitCommit=%GIT_COMMIT_HASH% -X main.BuildDate=%BuildDate% -X main.DingAccessToken=%DingAccessToken% -X main.DingSecret=%DingSecret%" -o ../../bin/other