Update to 'consul version' behaviour

After e6b6f18172 if consul was built
with just running "go build" the GitDescribe would be empty and consul
version would be empty.

This change alters the behaviour so that if consul is build without
proper ldflags the version will be postfixed with "dev" prerelease to
indicate that it is self compiled in a wrong way.

Should someone have a bug in such a binary at least devs should easily
see from the version number that binary has not been created by
recommended means.
This commit is contained in:
Janne Paenkaelae 2014-11-23 15:42:08 +00:00
parent 485f0a0c93
commit 3bb03f4c86
1 changed files with 12 additions and 2 deletions

View File

@ -88,10 +88,20 @@ func init() {
}, },
"version": func() (cli.Command, error) { "version": func() (cli.Command, error) {
ver := ""
rel := ""
if len(GitDescribe) == 0 {
ver = Version
rel = "dev"
} else {
ver = GitDescribe
rel = VersionPrerelease
}
return &command.VersionCommand{ return &command.VersionCommand{
Revision: GitCommit, Revision: GitCommit,
Version: GitDescribe, Version: ver,
VersionPrerelease: VersionPrerelease, VersionPrerelease: rel,
Ui: ui, Ui: ui,
}, nil }, nil
}, },