44 lines
1.1 KiB
Smarty
44 lines
1.1 KiB
Smarty
package utils
|
|
|
|
import "fmt"
|
|
|
|
// 构建信息变量,通过 ldflags 在构建时注入
|
|
var (
|
|
// Version 应用版本信息
|
|
Version string
|
|
|
|
// BuildAt 构建时间
|
|
BuildAt string
|
|
|
|
// GitHash Git 提交哈希
|
|
GitHash string
|
|
)
|
|
|
|
// GetBuildInfo 获取构建信息
|
|
func GetBuildInfo() map[string]string {
|
|
return map[string]string{
|
|
"version": Version,
|
|
"buildAt": BuildAt,
|
|
"gitHash": GitHash,
|
|
}
|
|
}
|
|
|
|
// PrintBuildInfo 打印构建信息
|
|
func PrintBuildInfo(appName string) {
|
|
buildInfo := GetBuildInfo()
|
|
|
|
println("========================================")
|
|
printf("🚀 %s\n", appName)
|
|
println("========================================")
|
|
printf("📋 Version: %s\n", buildInfo["version"])
|
|
printf("🕐 Build Time: %s\n", buildInfo["buildAt"])
|
|
printf("🔗 Git Hash: %s\n", buildInfo["gitHash"])
|
|
println("========================================")
|
|
println("🌟 Application is starting...")
|
|
println()
|
|
}
|
|
|
|
// 为了避免导入 fmt 包,我们使用内置的 print 和 printf 函数
|
|
func printf(format string, args ...interface{}) {
|
|
print(fmt.Sprintf(format, args...))
|
|
} |