Browse Source

Fix for #828: Embed build tags (#1051)

* 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 indentation
tags/v1.1.0
Jonas 7 years ago
parent
commit
a201977590
5 changed files with 21 additions and 4 deletions
  1. 1
    1
      Makefile
  2. 14
    1
      main.go
  3. 2
    1
      modules/setting/setting.go
  4. 3
    0
      modules/templates/helper.go
  5. 1
    1
      templates/admin/config.tmpl

+ 1
- 1
Makefile View File

@@ -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/)

+ 14
- 1
main.go View File

@@ -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"
@@ -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,
@@ -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)
}

+ 2
- 1
modules/setting/setting.go View File

@@ -59,6 +59,7 @@ const (
var (
// AppVer settings
AppVer string
AppBuiltWith string
AppName string
AppURL string
AppSubURL string
@@ -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))

+ 3
- 0
modules/templates/helper.go View File

@@ -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
},

+ 1
- 1
templates/admin/config.tmpl View File

@@ -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>

Loading…
Cancel
Save