diff --git a/contrib/mesos/pkg/service/endpoints_controller.go b/contrib/mesos/pkg/service/endpoints_controller.go index e7fd9fdd68..ce3dfd8c3c 100644 --- a/contrib/mesos/pkg/service/endpoints_controller.go +++ b/contrib/mesos/pkg/service/endpoints_controller.go @@ -384,7 +384,7 @@ func (e *endpointController) syncService(key string) { // some stragglers could have been left behind if the endpoint controller // reboots). func (e *endpointController) checkLeftoverEndpoints() { - list, err := e.client.Endpoints(api.NamespaceAll).List(labels.Everything()) + list, err := e.client.Endpoints(api.NamespaceAll).List(labels.Everything(), fields.Everything()) if err != nil { glog.Errorf("Unable to list endpoints (%v); orphaned endpoints will not be cleaned up. (They're pretty harmless, but you can restart this component if you want another attempt made.)", err) return diff --git a/pkg/client/unversioned/endpoints.go b/pkg/client/unversioned/endpoints.go index fbf43db2fe..21c8344adf 100644 --- a/pkg/client/unversioned/endpoints.go +++ b/pkg/client/unversioned/endpoints.go @@ -33,7 +33,7 @@ type EndpointsNamespacer interface { // EndpointsInterface has methods to work with Endpoints resources type EndpointsInterface interface { Create(endpoints *api.Endpoints) (*api.Endpoints, error) - List(selector labels.Selector) (*api.EndpointsList, error) + List(label labels.Selector, field fields.Selector) (*api.EndpointsList, error) Get(name string) (*api.Endpoints, error) Delete(name string) error Update(endpoints *api.Endpoints) (*api.Endpoints, error) @@ -59,12 +59,13 @@ func (c *endpoints) Create(endpoints *api.Endpoints) (*api.Endpoints, error) { } // List takes a selector, and returns the list of endpoints that match that selector -func (c *endpoints) List(selector labels.Selector) (result *api.EndpointsList, err error) { +func (c *endpoints) List(label labels.Selector, field fields.Selector) (result *api.EndpointsList, err error) { result = &api.EndpointsList{} err = c.r.Get(). Namespace(c.ns). Resource("endpoints"). - LabelsSelectorParam(selector). + LabelsSelectorParam(label). + FieldsSelectorParam(field). Do(). Into(result) return diff --git a/pkg/client/unversioned/endpoints_test.go b/pkg/client/unversioned/endpoints_test.go index 0c39ec5bca..ba9cd1bcac 100644 --- a/pkg/client/unversioned/endpoints_test.go +++ b/pkg/client/unversioned/endpoints_test.go @@ -21,6 +21,7 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/testapi" + "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/labels" ) @@ -42,7 +43,7 @@ func TestListEndpoints(t *testing.T) { }, }, } - receivedEndpointsList, err := c.Setup(t).Endpoints(ns).List(labels.Everything()) + receivedEndpointsList, err := c.Setup(t).Endpoints(ns).List(labels.Everything(), fields.Everything()) c.Validate(t, receivedEndpointsList, err) } diff --git a/pkg/client/unversioned/testclient/fake_endpoints.go b/pkg/client/unversioned/testclient/fake_endpoints.go index 5fce701c97..913d83c1ab 100644 --- a/pkg/client/unversioned/testclient/fake_endpoints.go +++ b/pkg/client/unversioned/testclient/fake_endpoints.go @@ -39,8 +39,8 @@ func (c *FakeEndpoints) Get(name string) (*api.Endpoints, error) { return obj.(*api.Endpoints), err } -func (c *FakeEndpoints) List(label labels.Selector) (*api.EndpointsList, error) { - obj, err := c.Fake.Invokes(NewListAction("endpoints", c.Namespace, label, nil), &api.EndpointsList{}) +func (c *FakeEndpoints) List(label labels.Selector, field fields.Selector) (*api.EndpointsList, error) { + obj, err := c.Fake.Invokes(NewListAction("endpoints", c.Namespace, label, field), &api.EndpointsList{}) if obj == nil { return nil, err } diff --git a/pkg/controller/endpoint/endpoints_controller.go b/pkg/controller/endpoint/endpoints_controller.go index 303591c81b..e557508fae 100644 --- a/pkg/controller/endpoint/endpoints_controller.go +++ b/pkg/controller/endpoint/endpoints_controller.go @@ -384,7 +384,7 @@ func (e *EndpointController) syncService(key string) { // some stragglers could have been left behind if the endpoint controller // reboots). func (e *EndpointController) checkLeftoverEndpoints() { - list, err := e.client.Endpoints(api.NamespaceAll).List(labels.Everything()) + list, err := e.client.Endpoints(api.NamespaceAll).List(labels.Everything(), fields.Everything()) if err != nil { glog.Errorf("Unable to list endpoints (%v); orphaned endpoints will not be cleaned up. (They're pretty harmless, but you can restart this component if you want another attempt made.)", err) return diff --git a/test/e2e/framework.go b/test/e2e/framework.go index 7f6a598e39..3c2927c921 100644 --- a/test/e2e/framework.go +++ b/test/e2e/framework.go @@ -139,7 +139,7 @@ func (f *Framework) WaitForAnEndpoint(serviceName string) error { for { // TODO: Endpoints client should take a field selector so we // don't have to list everything. - list, err := f.Client.Endpoints(f.Namespace.Name).List(labels.Everything()) + list, err := f.Client.Endpoints(f.Namespace.Name).List(labels.Everything(), fields.Everything()) if err != nil { return err } diff --git a/test/e2e/service_latency.go b/test/e2e/service_latency.go index f383685c52..0c566c39fa 100644 --- a/test/e2e/service_latency.go +++ b/test/e2e/service_latency.go @@ -279,7 +279,7 @@ func startEndpointWatcher(f *Framework, q *endpointQueries) { _, controller := framework.NewInformer( &cache.ListWatch{ ListFunc: func() (runtime.Object, error) { - return f.Client.Endpoints(f.Namespace.Name).List(labels.Everything()) + return f.Client.Endpoints(f.Namespace.Name).List(labels.Everything(), fields.Everything()) }, WatchFunc: func(options api.ListOptions) (watch.Interface, error) { return f.Client.Endpoints(f.Namespace.Name).Watch(labels.Everything(), fields.Everything(), options) diff --git a/test/e2e/util.go b/test/e2e/util.go index 0f0fc3ef84..aace4e3f7d 100644 --- a/test/e2e/util.go +++ b/test/e2e/util.go @@ -705,7 +705,7 @@ func waitForService(c *client.Client, namespace, name string, exist bool, interv func waitForServiceEndpointsNum(c *client.Client, namespace, serviceName string, expectNum int, interval, timeout time.Duration) error { return wait.Poll(interval, timeout, func() (bool, error) { Logf("Waiting for amount of service:%s endpoints to %d", serviceName, expectNum) - list, err := c.Endpoints(namespace).List(labels.Everything()) + list, err := c.Endpoints(namespace).List(labels.Everything(), fields.Everything()) if err != nil { return false, err }