// DefaultKubernetesUserAgent returns the default user agent that clients can use. func DefaultKubernetesUserAgent() string { commit := version.Get().GitCommit if len(commit) > 7 { commit = commit[:7] } if len(commit) == 0 { commit = "unknown" } version := version.Get().GitVersion seg := strings.SplitN(version, "-", 2) version = seg[0] return fmt.Sprintf("%s/%s (%s/%s) kubernetes/%s", path.Base(os.Args[0]), version, gruntime.GOOS, gruntime.GOARCH, commit) }
func (c *FakeDiscovery) ServerVersion() (*version.Info, error) { action := testing.ActionImpl{} action.Verb = "get" action.Resource = schema.GroupVersionResource{Resource: "version"} c.Invokes(action, nil) versionInfo := kubeversion.Get() return &versionInfo, nil }
func (c *FakeDiscovery) ServerVersion() (*version.Info, error) { action := ActionImpl{} action.Verb = "get" action.Resource = unversioned.GroupVersionResource{Resource: "version"} c.Invokes(action, nil) versionInfo := version.Get() return &versionInfo, nil }
// MatchesServerVersion queries the server to compares the build version // (git hash) of the client with the server's build version. It returns an error // if it failed to contact the server or if the versions are not an exact match. func MatchesServerVersion(client DiscoveryInterface) error { cVer := version.Get() sVer, err := client.ServerVersion() if err != nil { return fmt.Errorf("couldn't read version from server: %v\n", err) } // GitVersion includes GitCommit and GitTreeState, but best to be safe? if cVer.GitVersion != sVer.GitVersion || cVer.GitCommit != sVer.GitCommit || cVer.GitTreeState != sVer.GitTreeState { return fmt.Errorf("server version (%#v) differs from client version (%#v)!\n", sVer, cVer) } return nil }