diff --git a/cmd/kube-apiserver/app/options/validation.go b/cmd/kube-apiserver/app/options/validation.go index df4c124ffdb..63d5a46d9dd 100644 --- a/cmd/kube-apiserver/app/options/validation.go +++ b/cmd/kube-apiserver/app/options/validation.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2014 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -45,6 +45,7 @@ func validateServiceNodePort(options *ServerRunOptions) []error { return errors } +// Validate checks ServerRunOptions and return a slice of found errors. func (options *ServerRunOptions) Validate() []error { var errors []error if errs := options.Etcd.Validate(); len(errs) > 0 { diff --git a/pkg/registry/core/componentstatus/rest.go b/pkg/registry/core/componentstatus/rest.go index a92d9ae9a41..a40a2a4a2e5 100644 --- a/pkg/registry/core/componentstatus/rest.go +++ b/pkg/registry/core/componentstatus/rest.go @@ -23,19 +23,18 @@ import ( "k8s.io/kubernetes/pkg/api" metav1 "k8s.io/kubernetes/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apiserver" "k8s.io/kubernetes/pkg/probe" httpprober "k8s.io/kubernetes/pkg/probe/http" "k8s.io/kubernetes/pkg/runtime" ) type REST struct { - GetServersToValidate func() map[string]apiserver.Server + GetServersToValidate func() map[string]Server prober httpprober.HTTPProber } // NewStorage returns a new REST. -func NewStorage(serverRetriever func() map[string]apiserver.Server) *REST { +func NewStorage(serverRetriever func() map[string]Server) *REST { return &REST{ GetServersToValidate: serverRetriever, prober: httpprober.New(), @@ -59,7 +58,7 @@ func (rs *REST) List(ctx api.Context, options *api.ListOptions) (runtime.Object, wait.Add(len(servers)) statuses := make(chan api.ComponentStatus, len(servers)) for k, v := range servers { - go func(name string, server apiserver.Server) { + go func(name string, server Server) { defer wait.Done() status := rs.getComponentStatus(name, server) statuses <- *status @@ -96,7 +95,7 @@ func ToConditionStatus(s probe.Result) api.ConditionStatus { } } -func (rs *REST) getComponentStatus(name string, server apiserver.Server) *api.ComponentStatus { +func (rs *REST) getComponentStatus(name string, server Server) *api.ComponentStatus { status, msg, err := server.DoServerCheck(rs.prober) errorMsg := "" if err != nil { diff --git a/pkg/registry/core/componentstatus/rest_test.go b/pkg/registry/core/componentstatus/rest_test.go index 6a31b3777e3..1206db27b02 100644 --- a/pkg/registry/core/componentstatus/rest_test.go +++ b/pkg/registry/core/componentstatus/rest_test.go @@ -28,7 +28,6 @@ import ( "k8s.io/kubernetes/pkg/api" metav1 "k8s.io/kubernetes/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apiserver" "k8s.io/kubernetes/pkg/probe" "k8s.io/kubernetes/pkg/util/diff" ) @@ -51,8 +50,8 @@ type testResponse struct { func NewTestREST(resp testResponse) *REST { return &REST{ - GetServersToValidate: func() map[string]apiserver.Server { - return map[string]apiserver.Server{ + GetServersToValidate: func() map[string]Server { + return map[string]Server{ "test1": {Addr: "testserver1", Port: 8000, Path: "/healthz"}, } }, diff --git a/pkg/apiserver/validator.go b/pkg/registry/core/componentstatus/validator.go similarity index 98% rename from pkg/apiserver/validator.go rename to pkg/registry/core/componentstatus/validator.go index d5f3cdb113e..1b24153af2b 100644 --- a/pkg/apiserver/validator.go +++ b/pkg/registry/core/componentstatus/validator.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package apiserver +package componentstatus import ( "net/http" diff --git a/pkg/apiserver/validator_test.go b/pkg/registry/core/componentstatus/validator_test.go similarity index 85% rename from pkg/apiserver/validator_test.go rename to pkg/registry/core/componentstatus/validator_test.go index 7d7bc13ead4..3c0f69eddea 100644 --- a/pkg/apiserver/validator_test.go +++ b/pkg/registry/core/componentstatus/validator_test.go @@ -14,32 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. */ -package apiserver +package componentstatus import ( "errors" "fmt" "testing" - "net/http" - "net/url" - "time" - "k8s.io/kubernetes/pkg/probe" ) -type fakeHttpProber struct { - result probe.Result - body string - err error -} - -func (f *fakeHttpProber) Probe(*url.URL, http.Header, time.Duration) (probe.Result, string, error) { - return f.result, f.body, f.err -} - -func alwaysError([]byte) error { return errors.New("test error") } - func matchError(data []byte) error { if string(data) != "bar" { return errors.New("match error") diff --git a/pkg/registry/core/rest/storage_core.go b/pkg/registry/core/rest/storage_core.go index f17f68ca66d..dc82c46751d 100644 --- a/pkg/registry/core/rest/storage_core.go +++ b/pkg/registry/core/rest/storage_core.go @@ -30,7 +30,6 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apimachinery/registered" - "k8s.io/kubernetes/pkg/apiserver" policyclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion" "k8s.io/kubernetes/pkg/client/restclient" "k8s.io/kubernetes/pkg/genericapiserver" @@ -243,8 +242,8 @@ type componentStatusStorage struct { storageFactory genericapiserver.StorageFactory } -func (s componentStatusStorage) serversToValidate() map[string]apiserver.Server { - serversToValidate := map[string]apiserver.Server{ +func (s componentStatusStorage) serversToValidate() map[string]componentstatus.Server { + serversToValidate := map[string]componentstatus.Server{ "controller-manager": {Addr: "127.0.0.1", Port: ports.ControllerManagerPort, Path: "/healthz"}, "scheduler": {Addr: "127.0.0.1", Port: ports.SchedulerPort, Path: "/healthz"}, } @@ -270,7 +269,7 @@ func (s componentStatusStorage) serversToValidate() map[string]apiserver.Server port = 2379 } // TODO: etcd health checking should be abstracted in the storage tier - serversToValidate[fmt.Sprintf("etcd-%d", ix)] = apiserver.Server{ + serversToValidate[fmt.Sprintf("etcd-%d", ix)] = componentstatus.Server{ Addr: addr, EnableHTTPS: etcdUrl.Scheme == "https", Port: port,