Skip to content

Commit

Permalink
Fix for #828: Embed build tags (#1051)
Browse files Browse the repository at this point in the history
* Fix for #828
Add build tags to ldflags and print in version output

Signed-off-by: Jonas Östanbäck <[email protected]>

* Reworked formatBuiltWith function

Signed-off-by: Jonas Östanbäck <[email protected]>

* Add tags to version information in admin panel

Signed-off-by: Jonas Östanbäck <[email protected]>

* Added new variable for use on admin page.

Signed-off-by: Jonas Östanbäck <[email protected]>

* Fixed incorrect indentation
  • Loading branch information
cez81 authored and lunny committed Feb 28, 2017
1 parent 8947b71 commit a201977
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 4 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ BINDATA := modules/{options,public,templates}/bindata.go
STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less)
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/*
PACKAGES ?= $(shell go list ./... | grep -v /vendor/)
Expand Down
15 changes: 14 additions & 1 deletion main.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ package main // import "code.gitea.io/gitea"

import (
"os"
"strings"

"code.gitea.io/gitea/cmd"
"code.gitea.io/gitea/modules/log"
Expand All @@ -18,15 +19,19 @@ import (
// Version holds the current Gitea version
var Version = "1.1.0+dev"

// Tags holds the build tags used
var Tags = ""

func init() {
setting.AppVer = Version
setting.AppBuiltWith = formatBuiltWith(Tags)
}

func main() {
app := cli.NewApp()
app.Name = "Gitea"
app.Usage = "A painless self-hosted Git service"
app.Version = Version
app.Version = Version + formatBuiltWith(Tags)
app.Commands = []cli.Command{
cmd.CmdWeb,
cmd.CmdServ,
Expand All @@ -41,3 +46,11 @@ func main() {
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)
}
3 changes: 2 additions & 1 deletion modules/setting/setting.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ const (
var (
// AppVer settings
AppVer string
AppBuiltWith string
AppName string
AppURL string
AppSubURL string
Expand Down Expand Up @@ -939,7 +940,7 @@ var logLevels = map[string]string{
}

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"), ",")
LogConfigs = make([]string, len(LogModes))
Expand Down
3 changes: 3 additions & 0 deletions modules/templates/helper.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ func NewFuncMap() []template.FuncMap {
"AppVer": func() string {
return setting.AppVer
},
"AppBuiltWith": func() string {
return setting.AppBuiltWith
},
"AppDomain": func() string {
return setting.Domain
},
Expand Down
2 changes: 1 addition & 1 deletion templates/admin/config.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<dt>{{.i18n.Tr "admin.config.app_name"}}</dt>
<dd>{{AppName}}</dd>
<dt>{{.i18n.Tr "admin.config.app_ver"}}</dt>
<dd>{{AppVer}}</dd>
<dd>{{AppVer}}{{AppBuiltWith}}</dd>
<dt>{{.i18n.Tr "admin.config.app_url"}}</dt>
<dd>{{.AppUrl}}</dd>
<dt>{{.i18n.Tr "admin.config.domain"}}</dt>
Expand Down

0 comments on commit a201977

Please sign in to comment.