2020-10-27 04:23:58 +00:00
|
|
|
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
package version
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
"runtime"
|
|
|
|
"strings"
|
|
|
|
)
|
|
|
|
|
|
|
|
func String() string {
|
|
|
|
var ret strings.Builder
|
|
|
|
ret.WriteString(Short)
|
|
|
|
ret.WriteByte('\n')
|
|
|
|
if GitCommit != "" {
|
2022-03-16 20:55:23 +00:00
|
|
|
var dirty string
|
|
|
|
if GitDirty {
|
|
|
|
dirty = "-dirty"
|
|
|
|
}
|
|
|
|
fmt.Fprintf(&ret, " tailscale commit: %s%s\n", GitCommit, dirty)
|
2020-10-27 04:23:58 +00:00
|
|
|
}
|
|
|
|
if ExtraGitCommit != "" {
|
|
|
|
fmt.Fprintf(&ret, " other commit: %s\n", ExtraGitCommit)
|
|
|
|
}
|
|
|
|
fmt.Fprintf(&ret, " go version: %s\n", runtime.Version())
|
|
|
|
return strings.TrimSpace(ret.String())
|
|
|
|
}
|