* Fix for #828 Add build tags to ldflags and print in version output Signed-off-by: Jonas Östanbäck <jonas.ostanback@gmail.com> * Reworked formatBuiltWith function Signed-off-by: Jonas Östanbäck <jonas.ostanback@gmail.com> * Add tags to version information in admin panel Signed-off-by: Jonas Östanbäck <jonas.ostanback@gmail.com> * Added new variable for use on admin page. Signed-off-by: Jonas Östanbäck <jonas.ostanback@gmail.com> * Fixed incorrect indentationmaster
@@ -11,7 +11,7 @@ BINDATA := modules/{options,public,templates}/bindata.go | |||||
STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less) | STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less) | ||||
JAVASCRIPTS := | JAVASCRIPTS := | ||||
LDFLAGS := -X "main.Version=$(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//')" | |||||
LDFLAGS := -X "main.Version=$(shell git describe --tags --always | sed 's/-/+/' | sed 's/^v//')" -X "main.Tags=$(TAGS)" | |||||
TARGETS ?= linux/*,darwin/*,windows/* | TARGETS ?= linux/*,darwin/*,windows/* | ||||
PACKAGES ?= $(shell go list ./... | grep -v /vendor/) | PACKAGES ?= $(shell go list ./... | grep -v /vendor/) | ||||
@@ -8,6 +8,7 @@ package main // import "code.gitea.io/gitea" | |||||
import ( | import ( | ||||
"os" | "os" | ||||
"strings" | |||||
"code.gitea.io/gitea/cmd" | "code.gitea.io/gitea/cmd" | ||||
"code.gitea.io/gitea/modules/log" | "code.gitea.io/gitea/modules/log" | ||||
@@ -18,15 +19,19 @@ import ( | |||||
// Version holds the current Gitea version | // Version holds the current Gitea version | ||||
var Version = "1.1.0+dev" | var Version = "1.1.0+dev" | ||||
// Tags holds the build tags used | |||||
var Tags = "" | |||||
func init() { | func init() { | ||||
setting.AppVer = Version | setting.AppVer = Version | ||||
setting.AppBuiltWith = formatBuiltWith(Tags) | |||||
} | } | ||||
func main() { | func main() { | ||||
app := cli.NewApp() | app := cli.NewApp() | ||||
app.Name = "Gitea" | app.Name = "Gitea" | ||||
app.Usage = "A painless self-hosted Git service" | app.Usage = "A painless self-hosted Git service" | ||||
app.Version = Version | |||||
app.Version = Version + formatBuiltWith(Tags) | |||||
app.Commands = []cli.Command{ | app.Commands = []cli.Command{ | ||||
cmd.CmdWeb, | cmd.CmdWeb, | ||||
cmd.CmdServ, | cmd.CmdServ, | ||||
@@ -41,3 +46,11 @@ func main() { | |||||
log.Fatal(4, "Failed to run app with %s: %v", os.Args, err) | log.Fatal(4, "Failed to run app with %s: %v", os.Args, err) | ||||
} | } | ||||
} | } | ||||
func formatBuiltWith(Tags string) string { | |||||
if len(Tags) == 0 { | |||||
return "" | |||||
} | |||||
return " built with: " + strings.Replace(Tags, " ", ", ", -1) | |||||
} |
@@ -59,6 +59,7 @@ const ( | |||||
var ( | var ( | ||||
// AppVer settings | // AppVer settings | ||||
AppVer string | AppVer string | ||||
AppBuiltWith string | |||||
AppName string | AppName string | ||||
AppURL string | AppURL string | ||||
AppSubURL string | AppSubURL string | ||||
@@ -939,7 +940,7 @@ var logLevels = map[string]string{ | |||||
} | } | ||||
func newLogService() { | func newLogService() { | ||||
log.Info("Gitea v%s", AppVer) | |||||
log.Info("Gitea v%s%s", AppVer, AppBuiltWith) | |||||
LogModes = strings.Split(Cfg.Section("log").Key("MODE").MustString("console"), ",") | LogModes = strings.Split(Cfg.Section("log").Key("MODE").MustString("console"), ",") | ||||
LogConfigs = make([]string, len(LogModes)) | LogConfigs = make([]string, len(LogModes)) | ||||
@@ -48,6 +48,9 @@ func NewFuncMap() []template.FuncMap { | |||||
"AppVer": func() string { | "AppVer": func() string { | ||||
return setting.AppVer | return setting.AppVer | ||||
}, | }, | ||||
"AppBuiltWith": func() string { | |||||
return setting.AppBuiltWith | |||||
}, | |||||
"AppDomain": func() string { | "AppDomain": func() string { | ||||
return setting.Domain | return setting.Domain | ||||
}, | }, | ||||
@@ -13,7 +13,7 @@ | |||||
<dt>{{.i18n.Tr "admin.config.app_name"}}</dt> | <dt>{{.i18n.Tr "admin.config.app_name"}}</dt> | ||||
<dd>{{AppName}}</dd> | <dd>{{AppName}}</dd> | ||||
<dt>{{.i18n.Tr "admin.config.app_ver"}}</dt> | <dt>{{.i18n.Tr "admin.config.app_ver"}}</dt> | ||||
<dd>{{AppVer}}</dd> | |||||
<dd>{{AppVer}}{{AppBuiltWith}}</dd> | |||||
<dt>{{.i18n.Tr "admin.config.app_url"}}</dt> | <dt>{{.i18n.Tr "admin.config.app_url"}}</dt> | ||||
<dd>{{.AppUrl}}</dd> | <dd>{{.AppUrl}}</dd> | ||||
<dt>{{.i18n.Tr "admin.config.domain"}}</dt> | <dt>{{.i18n.Tr "admin.config.domain"}}</dt> | ||||