mirror of
https://github.com/ScuroNeko/mtg.git
synced 2026-09-01 13:44:01 +03:00
Use buildinfo to get a version
This commit is contained in:
@@ -6,10 +6,7 @@ CC_BINARIES := $(shell bash -c "echo -n $(APP_NAME)-{linux,freebsd,openbsd}-{38
|
|||||||
|
|
||||||
GOLANGCI_LINT_VERSION := v1.21.0
|
GOLANGCI_LINT_VERSION := v1.21.0
|
||||||
|
|
||||||
VERSION_GO := $(shell go version)
|
COMMON_BUILD_FLAGS := -ldflags="-s -w"
|
||||||
VERSION_DATE := $(shell date -Ru)
|
|
||||||
VERSION_TAG := $(shell git describe --tags --always)
|
|
||||||
COMMON_BUILD_FLAGS := -ldflags="-s -w -X 'main.version=$(VERSION_TAG) ($(VERSION_GO)) [$(VERSION_DATE)]'"
|
|
||||||
|
|
||||||
MOD_ON := env GO111MODULE=on
|
MOD_ON := env GO111MODULE=on
|
||||||
MOD_OFF := env GO111MODULE=auto
|
MOD_OFF := env GO111MODULE=auto
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package main
|
|||||||
import (
|
import (
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"os"
|
"os"
|
||||||
|
"runtime/debug"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
kingpin "gopkg.in/alecthomas/kingpin.v2"
|
kingpin "gopkg.in/alecthomas/kingpin.v2"
|
||||||
@@ -12,8 +14,6 @@ import (
|
|||||||
"github.com/9seconds/mtg/utils"
|
"github.com/9seconds/mtg/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
var version = "dev" // this has to be set by build ld flags
|
|
||||||
|
|
||||||
var (
|
var (
|
||||||
app = kingpin.New("MTG", "Simple MTPROTO proxy.")
|
app = kingpin.New("MTG", "Simple MTPROTO proxy.")
|
||||||
|
|
||||||
@@ -114,7 +114,7 @@ var (
|
|||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
rand.Seed(time.Now().UTC().UnixNano())
|
rand.Seed(time.Now().UTC().UnixNano())
|
||||||
app.Version(version)
|
app.Version(getVersion())
|
||||||
app.HelpFlag.Short('h')
|
app.HelpFlag.Short('h')
|
||||||
|
|
||||||
if err := utils.SetLimits(); err != nil {
|
if err := utils.SetLimits(); err != nil {
|
||||||
@@ -153,3 +153,26 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getVersion() string {
|
||||||
|
if info, ok := debug.ReadBuildInfo(); ok {
|
||||||
|
builder := strings.Builder{}
|
||||||
|
version := info.Main.Version
|
||||||
|
|
||||||
|
if version == "(devel)" {
|
||||||
|
version = "dev"
|
||||||
|
}
|
||||||
|
|
||||||
|
builder.WriteString(version)
|
||||||
|
|
||||||
|
if info.Main.Sum != "" {
|
||||||
|
builder.WriteString(" (checksum: ")
|
||||||
|
builder.WriteString(info.Main.Sum)
|
||||||
|
builder.WriteRune(')')
|
||||||
|
}
|
||||||
|
|
||||||
|
return builder.String()
|
||||||
|
}
|
||||||
|
|
||||||
|
return "dev"
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user