Add version metadata

This commit is contained in:
Calvin Leung Huang
2017-04-28 16:22:00 -04:00
parent 91366e256c
commit 2eb72b69fd

View File

@@ -15,6 +15,7 @@ var (
Version = "unknown"
VersionPrerelease = "unknown"
VersionMetadata = ""
)
// VersionInfo
@@ -22,11 +23,13 @@ type VersionInfo struct {
Revision string
Version string
VersionPrerelease string
VersionMetadata string
}
func GetVersion() *VersionInfo {
ver := Version
rel := VersionPrerelease
md := VersionMetadata
if GitDescribe != "" {
ver = GitDescribe
}
@@ -38,6 +41,7 @@ func GetVersion() *VersionInfo {
Revision: GitCommit,
Version: ver,
VersionPrerelease: rel,
VersionMetadata: md,
}
}
@@ -52,6 +56,10 @@ func (c *VersionInfo) VersionNumber() string {
version = fmt.Sprintf("%s-%s", version, c.VersionPrerelease)
}
if c.VersionMetadata != "" {
version = fmt.Sprintf("%s+%s", version, c.VersionMetadata)
}
return version
}
@@ -66,6 +74,11 @@ func (c *VersionInfo) FullVersionNumber(rev bool) string {
if c.VersionPrerelease != "" {
fmt.Fprintf(&versionString, "-%s", c.VersionPrerelease)
}
if c.VersionMetadata != "" {
fmt.Fprintf(&versionString, "+%s", c.VersionMetadata)
}
if rev && c.Revision != "" {
fmt.Fprintf(&versionString, " (%s)", c.Revision)
}