Documentation ¶
Index ¶
- Constants
- Variables
- func BinaryURL(build *Build) (*url.URL, error)
- func DownloadBinary(build *Build, fileName string) error
- func DownloadRoot() string
- func LookupBinary() (string, error)
- func ReleaseFilePath() string
- func SaveReleaseFile(dir string) error
- func Version() string
- func VersionString() string
- type Build
Constants ¶
const ( BuildSelectionEnvVar = "EMPIRICA_BUILD" DebugBuildEnvVar = "EMPIRICA_DEBUG_BUILD" DownloadRootEnvVar = "EMPIRICA_DOWNLOAD_ROOT" )
Variables ¶
var ( ErrBuildMissing = errors.New("build info missing") ErrBuildEmpty = errors.New("build info empty") )
var Branch string
Branch holds the git branch of the build.
var BuildNum string
BuildNum holds the build build (123).
var Commit string
Commit holds the build Git commit SHA1.
var DevBuild string
DevBuild is "true" if this is a development build.
var ErrBuildNotFound = errors.New("build version not found")
var ErrEmptyBuild = errors.New("empty build")
var Tag string
Tag holds the git tag of the build.
var Time string
Time holds the build time.
Functions ¶
func DownloadBinary ¶
func DownloadRoot ¶
func DownloadRoot() string
func LookupBinary ¶
func ReleaseFilePath ¶
func ReleaseFilePath() string
func SaveReleaseFile ¶
func Version ¶
func Version() string
Version return the build version (vX.Y.Z) at build time. Returns "" if this build was not a tagged version.
func VersionString ¶
func VersionString() string
Types ¶
type Build ¶
type Build struct { DevBuild string `json:"dev,omitempty" yaml:"dev,omitempty"` Version string `json:"version,omitempty" yaml:"version,omitempty"` Tag string `json:"tag,omitempty" yaml:"tag,omitempty"` Commit string `json:"commit,omitempty" yaml:"commit,omitempty"` BuildNum string `json:"build,omitempty" yaml:"build,omitempty"` Branch string `json:"branch,omitempty" yaml:"branch,omitempty"` Time string `json:"time,omitempty" yaml:"time,omitempty"` // contains filtered or unexported fields }
func BinaryVersion ¶
BinaryVersion returns which binary version should be used. It will first use the environement variable override, then try to look for the version lock file inside a project.
func (*Build) VersionComponents ¶
VersionComponents returns the most important key and value of of the build. This allows identification of a build by different attributes, with the following precedence: - version - commit - build - tag - branch.