Print prettier version info

This commit is contained in:
Ken-Håvard Lieng 2018-11-22 11:31:02 +01:00
parent 9b40934654
commit 5d896ae439
4 changed files with 32 additions and 11 deletions

View File

@ -1,6 +1,6 @@
builds: builds:
- ldflags: - ldflags:
- -s -w -X github.com/khlieng/dispatch/commands.version=v{{.Version}} -X github.com/khlieng/dispatch/commands.commit={{.ShortCommit}} -X github.com/khlieng/dispatch/commands.date={{.Date}} - -s -w -X github.com/khlieng/dispatch/version.Tag=v{{.Version}} -X github.com/khlieng/dispatch/version.Commit={{.ShortCommit}} -X github.com/khlieng/dispatch/version.Date={{.Date}}
env: env:
- CGO_ENABLED=0 - CGO_ENABLED=0

View File

@ -13,16 +13,11 @@ import (
"github.com/khlieng/dispatch/storage" "github.com/khlieng/dispatch/storage"
"github.com/khlieng/dispatch/storage/bleve" "github.com/khlieng/dispatch/storage/bleve"
"github.com/khlieng/dispatch/storage/boltdb" "github.com/khlieng/dispatch/storage/boltdb"
"github.com/khlieng/dispatch/version"
"github.com/spf13/cobra" "github.com/spf13/cobra"
"github.com/spf13/viper" "github.com/spf13/viper"
) )
var (
version = "dev"
commit = "none"
date = "unknown"
)
const logo = ` const logo = `
____ _ _ _ ____ _ _ _
| _ \ (_) ___ _ __ __ _ | |_ ___ | |__ | _ \ (_) ___ _ __ __ _ | |_ ___ | |__
@ -42,7 +37,7 @@ var rootCmd = &cobra.Command{
Short: "Web-based IRC client in Go.", Short: "Web-based IRC client in Go.",
PersistentPreRun: func(cmd *cobra.Command, args []string) { PersistentPreRun: func(cmd *cobra.Command, args []string) {
if cmd.Use == "dispatch" { if cmd.Use == "dispatch" {
fmt.Printf(logo, version, commit, date) fmt.Printf(logo, version.Tag, version.Commit, version.Date)
} }
storage.Initialize(viper.GetString("dir")) storage.Initialize(viper.GetString("dir"))

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
Import="github.com/khlieng/dispatch/commands" Import="github.com/khlieng/dispatch/version"
Version=$(git describe --tags) Tag=$(git describe --tags)
Commit=$(git rev-parse --short HEAD) Commit=$(git rev-parse --short HEAD)
Date=$(date +'%Y-%m-%dT%TZ') Date=$(date +'%Y-%m-%dT%TZ')
go install -ldflags "-s -w -X $Import.version=$Version -X $Import.commit=$Commit -X $Import.date=$Date" go install -ldflags "-s -w -X $Import.Tag=$Tag -X $Import.Commit=$Commit -X $Import.Date=$Date"

26
version/version.go Normal file
View File

@ -0,0 +1,26 @@
package version
import (
"fmt"
"strings"
"time"
)
var (
Tag = "dev"
Commit = "none"
Date = "unknown"
)
func init() {
vParts := strings.Split(Tag, "-")
if len(vParts) > 1 {
Tag = fmt.Sprintf("%s + %s commits", vParts[0], vParts[1])
}
t, err := time.Parse(time.RFC3339, Date)
if err == nil {
Date = t.Format("02 Jan 2006, 15:04:05")
}
}