mirror of https://github.com/k3s-io/k3s
Pipe GetOptions to storage
parent
077b97e6d5
commit
3432fea8b2
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/federation/apis/federation"
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -27,7 +28,7 @@ import (
|
|||
type Registry interface {
|
||||
ListClusters(ctx api.Context, options *api.ListOptions) (*federation.ClusterList, error)
|
||||
WatchCluster(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetCluster(ctx api.Context, name string) (*federation.Cluster, error)
|
||||
GetCluster(ctx api.Context, name string, options *metav1.GetOptions) (*federation.Cluster, error)
|
||||
CreateCluster(ctx api.Context, cluster *federation.Cluster) error
|
||||
UpdateCluster(ctx api.Context, cluster *federation.Cluster) error
|
||||
DeleteCluster(ctx api.Context, name string) error
|
||||
|
@ -56,8 +57,8 @@ func (s *storage) WatchCluster(ctx api.Context, options *api.ListOptions) (watch
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetCluster(ctx api.Context, name string) (*federation.Cluster, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetCluster(ctx api.Context, name string, options *metav1.GetOptions) (*federation.Cluster, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -86,7 +86,7 @@ type Getter interface {
|
|||
// Get finds a resource in the storage by name and returns it.
|
||||
// Although it can return an arbitrary error value, IsNotFound(err) is true for the
|
||||
// returned error value err when the specified resource is not found.
|
||||
Get(ctx api.Context, name string) (runtime.Object, error)
|
||||
Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error)
|
||||
}
|
||||
|
||||
// GetterWithOptions is an object that retrieve a named RESTful resource and takes
|
||||
|
@ -98,6 +98,7 @@ type GetterWithOptions interface {
|
|||
// returned error value err when the specified resource is not found.
|
||||
// The options object passed to it is of the same type returned by the NewGetOptions
|
||||
// method.
|
||||
// TODO: Pass metav1.GetOptions.
|
||||
Get(ctx api.Context, name string, options runtime.Object) (runtime.Object, error)
|
||||
|
||||
// NewGetOptions returns an empty options object that will be used to pass
|
||||
|
|
|
@ -841,7 +841,7 @@ func (t *Tester) testDeleteGracefulHasDefault(obj runtime.Object, createFn Creat
|
|||
t.Fatalf("did not gracefully delete resource: %v", err)
|
||||
}
|
||||
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name)
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error, object should exist: %v", err)
|
||||
}
|
||||
|
@ -872,7 +872,7 @@ func (t *Tester) testDeleteGracefulWithValue(obj runtime.Object, createFn Create
|
|||
t.Fatalf("did not gracefully delete resource: %v", err)
|
||||
}
|
||||
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name)
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error, object should exist: %v", err)
|
||||
}
|
||||
|
@ -908,7 +908,7 @@ func (t *Tester) testDeleteGracefulExtend(obj runtime.Object, createFn CreateFun
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name)
|
||||
object, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error, object should exist: %v", err)
|
||||
}
|
||||
|
@ -944,7 +944,7 @@ func (t *Tester) testDeleteGracefulImmediate(obj runtime.Object, createFn Create
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
_, err = t.storage.(rest.Getter).Get(ctx, objectMeta.Name)
|
||||
_, err = t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Errorf("unexpected error, object should be deleted immediately: %v", err)
|
||||
}
|
||||
|
@ -971,7 +971,7 @@ func (t *Tester) testDeleteGracefulUsesZeroOnNil(obj runtime.Object, createFn Cr
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if _, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name); !errors.IsNotFound(err) {
|
||||
if _, err := t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{}); !errors.IsNotFound(err) {
|
||||
t.Errorf("unexpected error, object should not exist: %v", err)
|
||||
}
|
||||
}
|
||||
|
@ -1006,7 +1006,7 @@ func (t *Tester) testDeleteGracefulShorten(obj runtime.Object, createFn CreateFu
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
object, err = t.storage.(rest.Getter).Get(ctx, objectMeta.Name)
|
||||
object, err = t.storage.(rest.Getter).Get(ctx, objectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error, object should exist: %v", err)
|
||||
}
|
||||
|
@ -1043,7 +1043,7 @@ func (t *Tester) testGetDifferentNamespace(obj runtime.Object) {
|
|||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
got1, err := t.storage.(rest.Getter).Get(ctx1, objMeta.Name)
|
||||
got1, err := t.storage.(rest.Getter).Get(ctx1, objMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -1055,7 +1055,7 @@ func (t *Tester) testGetDifferentNamespace(obj runtime.Object) {
|
|||
t.Errorf("unexpected namespace of object: %#v, expected: %s", got1, api.NamespaceValue(ctx1))
|
||||
}
|
||||
|
||||
got2, err := t.storage.(rest.Getter).Get(ctx2, objMeta.Name)
|
||||
got2, err := t.storage.(rest.Getter).Get(ctx2, objMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -1078,7 +1078,7 @@ func (t *Tester) testGetFound(obj runtime.Object) {
|
|||
}
|
||||
existingMeta := t.getObjectMetaOrFail(existing)
|
||||
|
||||
got, err := t.storage.(rest.Getter).Get(ctx, t.namer(1))
|
||||
got, err := t.storage.(rest.Getter).Get(ctx, t.namer(1), &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -1099,7 +1099,7 @@ func (t *Tester) testGetMimatchedNamespace(obj runtime.Object) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
_, err = t.storage.(rest.Getter).Get(ctx2, t.namer(4))
|
||||
_, err = t.storage.(rest.Getter).Get(ctx2, t.namer(4), &metav1.GetOptions{})
|
||||
if t.clusterScope {
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
|
@ -1118,7 +1118,7 @@ func (t *Tester) testGetNotFound(obj runtime.Object) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
_, err = t.storage.(rest.Getter).Get(ctx, t.namer(3))
|
||||
_, err = t.storage.(rest.Getter).Get(ctx, t.namer(3), &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Errorf("unexpected error returned: %#v", err)
|
||||
}
|
||||
|
|
|
@ -383,7 +383,7 @@ type SimpleRESTStorage struct {
|
|||
}
|
||||
|
||||
func (storage *SimpleRESTStorage) Export(ctx api.Context, name string, opts metav1.ExportOptions) (runtime.Object, error) {
|
||||
obj, err := storage.Get(ctx, name)
|
||||
obj, err := storage.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -444,7 +444,7 @@ func (h *OutputConnect) ServeHTTP(w http.ResponseWriter, req *http.Request) {
|
|||
w.Write([]byte(h.response))
|
||||
}
|
||||
|
||||
func (storage *SimpleRESTStorage) Get(ctx api.Context, id string) (runtime.Object, error) {
|
||||
func (storage *SimpleRESTStorage) Get(ctx api.Context, id string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
storage.checkContext(ctx)
|
||||
if id == "binary" {
|
||||
return storage.stream, storage.errors["get"]
|
||||
|
@ -633,7 +633,7 @@ func (r *GetWithOptionsRESTStorage) Get(ctx api.Context, name string, options ru
|
|||
return nil, fmt.Errorf("Unexpected options object: %#v", options)
|
||||
}
|
||||
r.optionsReceived = options
|
||||
return r.SimpleRESTStorage.Get(ctx, name)
|
||||
return r.SimpleRESTStorage.Get(ctx, name, &metav1.GetOptions{})
|
||||
}
|
||||
|
||||
func (r *GetWithOptionsRESTStorage) NewGetOptions() (runtime.Object, bool, string) {
|
||||
|
@ -677,7 +677,7 @@ func (storage *SimpleTypedStorage) New() runtime.Object {
|
|||
return storage.baseType
|
||||
}
|
||||
|
||||
func (storage *SimpleTypedStorage) Get(ctx api.Context, id string) (runtime.Object, error) {
|
||||
func (storage *SimpleTypedStorage) Get(ctx api.Context, id string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
storage.checkContext(ctx)
|
||||
copied, err := api.Scheme.Copy(storage.item)
|
||||
if err != nil {
|
||||
|
@ -3265,7 +3265,7 @@ func (storage *SimpleXGSubresourceRESTStorage) New() runtime.Object {
|
|||
return &SimpleXGSubresource{}
|
||||
}
|
||||
|
||||
func (storage *SimpleXGSubresourceRESTStorage) Get(ctx api.Context, id string) (runtime.Object, error) {
|
||||
func (storage *SimpleXGSubresourceRESTStorage) Get(ctx api.Context, id string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
copied, err := api.Scheme.Copy(&storage.item)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
|
|
|
@ -131,6 +131,7 @@ func GetResource(r rest.Getter, e rest.Exporter, scope RequestScope) restful.Rou
|
|||
defer trace.LogIfLong(500 * time.Millisecond)
|
||||
|
||||
// check for export
|
||||
options := metav1.GetOptions{}
|
||||
if values := req.Request.URL.Query(); len(values) > 0 {
|
||||
exports := metav1.ExportOptions{}
|
||||
if err := scope.ParameterCodec.DecodeParameters(values, schema.GroupVersion{Version: "v1"}, &exports); err != nil {
|
||||
|
@ -142,9 +143,12 @@ func GetResource(r rest.Getter, e rest.Exporter, scope RequestScope) restful.Rou
|
|||
}
|
||||
return e.Export(ctx, name, exports)
|
||||
}
|
||||
if err := scope.ParameterCodec.DecodeParameters(values, schema.GroupVersion{Version: "v1"}, &options); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
return r.Get(ctx, name)
|
||||
return r.Get(ctx, name, &options)
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -102,7 +102,7 @@ func (p *testPatcher) Update(ctx api.Context, name string, objInfo rest.UpdatedO
|
|||
return inPod, false, nil
|
||||
}
|
||||
|
||||
func (p *testPatcher) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
func (p *testPatcher) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
p.t.Fatal("Unexpected call to testPatcher.Get")
|
||||
return nil, errors.New("Unexpected call to testPatcher.Get")
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package serviceaccount
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/v1"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_5"
|
||||
"k8s.io/kubernetes/pkg/registry/core/secret"
|
||||
secretetcd "k8s.io/kubernetes/pkg/registry/core/secret/etcd"
|
||||
|
@ -61,7 +62,7 @@ func NewGetterFromRegistries(serviceAccounts serviceaccountregistry.Registry, se
|
|||
}
|
||||
func (r *registryGetter) GetServiceAccount(namespace, name string) (*v1.ServiceAccount, error) {
|
||||
ctx := api.WithNamespace(api.NewContext(), namespace)
|
||||
internalServiceAccount, err := r.serviceAccounts.GetServiceAccount(ctx, name)
|
||||
internalServiceAccount, err := r.serviceAccounts.GetServiceAccount(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -72,7 +73,7 @@ func (r *registryGetter) GetServiceAccount(namespace, name string) (*v1.ServiceA
|
|||
}
|
||||
func (r *registryGetter) GetSecret(namespace, name string) (*v1.Secret, error) {
|
||||
ctx := api.WithNamespace(api.NewContext(), namespace)
|
||||
internalSecret, err := r.secrets.GetSecret(ctx, name)
|
||||
internalSecret, err := r.secrets.GetSecret(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -593,7 +593,7 @@ func (p *testGetterStorage) New() runtime.Object {
|
|||
}
|
||||
}
|
||||
|
||||
func (p *testGetterStorage) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
func (p *testGetterStorage) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
appsapi "k8s.io/kubernetes/pkg/apis/apps"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/apps/petset"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -99,8 +100,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -118,7 +118,7 @@ func TestStatusUpdate(t *testing.T) {
|
|||
if _, _, err := statusStorage.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/autoscaling"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/autoscaling/horizontalpodautoscaler"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -97,8 +98,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/batch"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/batch/cronjob"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -101,8 +102,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/batch"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/batch/job"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -101,8 +102,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/certificates"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -28,7 +29,7 @@ type Registry interface {
|
|||
ListCSRs(ctx api.Context, options *api.ListOptions) (*certificates.CertificateSigningRequestList, error)
|
||||
CreateCSR(ctx api.Context, csr *certificates.CertificateSigningRequest) error
|
||||
UpdateCSR(ctx api.Context, csr *certificates.CertificateSigningRequest) error
|
||||
GetCSR(ctx api.Context, csrID string) (*certificates.CertificateSigningRequest, error)
|
||||
GetCSR(ctx api.Context, csrID string, options *metav1.GetOptions) (*certificates.CertificateSigningRequest, error)
|
||||
DeleteCSR(ctx api.Context, csrID string) error
|
||||
WatchCSRs(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -67,8 +68,8 @@ func (s *storage) WatchCSRs(ctx api.Context, options *api.ListOptions) (watch.In
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetCSR(ctx api.Context, name string) (*certificates.CertificateSigningRequest, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetCSR(ctx api.Context, name string, options *metav1.GetOptions) (*certificates.CertificateSigningRequest, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ import (
|
|||
"sync"
|
||||
|
||||
"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"
|
||||
|
@ -74,7 +75,7 @@ func (rs *REST) List(ctx api.Context, options *api.ListOptions) (runtime.Object,
|
|||
return &api.ComponentStatusList{Items: reply}, nil
|
||||
}
|
||||
|
||||
func (rs *REST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
func (rs *REST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
servers := rs.GetServersToValidate()
|
||||
|
||||
if server, ok := servers[name]; !ok {
|
||||
|
|
|
@ -27,6 +27,7 @@ import (
|
|||
"time"
|
||||
|
||||
"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"
|
||||
|
@ -119,7 +120,7 @@ func TestList_UnknownError(t *testing.T) {
|
|||
|
||||
func TestGet_NoError(t *testing.T) {
|
||||
r := NewTestREST(testResponse{result: probe.Success, data: "ok"})
|
||||
got, err := r.Get(api.NewContext(), "test1")
|
||||
got, err := r.Get(api.NewContext(), "test1", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -131,7 +132,7 @@ func TestGet_NoError(t *testing.T) {
|
|||
|
||||
func TestGet_BadName(t *testing.T) {
|
||||
r := NewTestREST(testResponse{result: probe.Success, data: "ok"})
|
||||
_, err := r.Get(api.NewContext(), "invalidname")
|
||||
_, err := r.Get(api.NewContext(), "invalidname", &metav1.GetOptions{})
|
||||
if err == nil {
|
||||
t.Fatalf("Expected error, but did not get one")
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package configmap
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -26,7 +27,7 @@ import (
|
|||
type Registry interface {
|
||||
ListConfigMaps(ctx api.Context, options *api.ListOptions) (*api.ConfigMapList, error)
|
||||
WatchConfigMaps(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetConfigMap(ctx api.Context, name string) (*api.ConfigMap, error)
|
||||
GetConfigMap(ctx api.Context, name string, options *metav1.GetOptions) (*api.ConfigMap, error)
|
||||
CreateConfigMap(ctx api.Context, cfg *api.ConfigMap) (*api.ConfigMap, error)
|
||||
UpdateConfigMap(ctx api.Context, cfg *api.ConfigMap) (*api.ConfigMap, error)
|
||||
DeleteConfigMap(ctx api.Context, name string) error
|
||||
|
@ -56,8 +57,8 @@ func (s *storage) WatchConfigMaps(ctx api.Context, options *api.ListOptions) (wa
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetConfigMap(ctx api.Context, name string) (*api.ConfigMap, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetConfigMap(ctx api.Context, name string, options *metav1.GetOptions) (*api.ConfigMap, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/autoscaling"
|
||||
"k8s.io/kubernetes/pkg/apis/autoscaling/validation"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/controller"
|
||||
|
@ -125,8 +126,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
@ -146,8 +147,8 @@ func (r *ScaleREST) New() runtime.Object {
|
|||
return &autoscaling.Scale{}
|
||||
}
|
||||
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
rc, err := r.registry.GetController(ctx, name)
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
rc, err := r.registry.GetController(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, errors.NewNotFound(autoscaling.Resource("replicationcontrollers/scale"), name)
|
||||
}
|
||||
|
@ -155,7 +156,7 @@ func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
|||
}
|
||||
|
||||
func (r *ScaleREST) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectInfo) (runtime.Object, bool, error) {
|
||||
rc, err := r.registry.GetController(ctx, name)
|
||||
rc, err := r.registry.GetController(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, false, errors.NewNotFound(autoscaling.Resource("replicationcontrollers/scale"), name)
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/autoscaling"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -151,7 +152,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
modifiedSno.Status.ObservedGeneration = 10
|
||||
ctx := api.NewDefaultContext()
|
||||
rc, err := createController(storage.Controller, modifiedSno, t)
|
||||
ctrl, err := storage.Controller.Get(ctx, rc.Name)
|
||||
ctrl, err := storage.Controller.Get(ctx, rc.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -168,7 +169,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
ctrl, err = storage.Controller.Get(ctx, rc.Name)
|
||||
ctrl, err = storage.Controller.Get(ctx, rc.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -183,7 +184,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
ctrl, err = storage.Controller.Get(ctx, rc.Name)
|
||||
ctrl, err = storage.Controller.Get(ctx, rc.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -271,7 +272,7 @@ func TestScaleGet(t *testing.T) {
|
|||
Selector: labels.SelectorFromSet(validController.Spec.Template.Labels).String(),
|
||||
},
|
||||
}
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
}
|
||||
|
@ -302,7 +303,7 @@ func TestScaleUpdate(t *testing.T) {
|
|||
if _, _, err := storage.Scale.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("error updating scale %v: %v", update, err)
|
||||
}
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ import (
|
|||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -30,7 +31,7 @@ import (
|
|||
type Registry interface {
|
||||
ListControllers(ctx api.Context, options *api.ListOptions) (*api.ReplicationControllerList, error)
|
||||
WatchControllers(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetController(ctx api.Context, controllerID string) (*api.ReplicationController, error)
|
||||
GetController(ctx api.Context, controllerID string, options *metav1.GetOptions) (*api.ReplicationController, error)
|
||||
CreateController(ctx api.Context, controller *api.ReplicationController) (*api.ReplicationController, error)
|
||||
UpdateController(ctx api.Context, controller *api.ReplicationController) (*api.ReplicationController, error)
|
||||
DeleteController(ctx api.Context, controllerID string) error
|
||||
|
@ -62,8 +63,8 @@ func (s *storage) WatchControllers(ctx api.Context, options *api.ListOptions) (w
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetController(ctx api.Context, controllerID string) (*api.ReplicationController, error) {
|
||||
obj, err := s.Get(ctx, controllerID)
|
||||
func (s *storage) GetController(ctx api.Context, controllerID string, options *metav1.GetOptions) (*api.ReplicationController, error) {
|
||||
obj, err := s.Get(ctx, controllerID, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -19,13 +19,14 @@ package endpoint
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
// Registry is an interface for things that know how to store endpoints.
|
||||
type Registry interface {
|
||||
ListEndpoints(ctx api.Context, options *api.ListOptions) (*api.EndpointsList, error)
|
||||
GetEndpoints(ctx api.Context, name string) (*api.Endpoints, error)
|
||||
GetEndpoints(ctx api.Context, name string, options *metav1.GetOptions) (*api.Endpoints, error)
|
||||
WatchEndpoints(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
UpdateEndpoints(ctx api.Context, e *api.Endpoints) error
|
||||
DeleteEndpoints(ctx api.Context, name string) error
|
||||
|
@ -54,8 +55,8 @@ func (s *storage) WatchEndpoints(ctx api.Context, options *api.ListOptions) (wat
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetEndpoints(ctx api.Context, name string) (*api.Endpoints, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetEndpoints(ctx api.Context, name string, options *metav1.GetOptions) (*api.Endpoints, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@ func NewREST(opts generic.RESTOptions) (*REST, *StatusREST, *FinalizeREST) {
|
|||
|
||||
// Delete enforces life-cycle rules for namespace termination
|
||||
func (r *REST) Delete(ctx api.Context, name string, options *api.DeleteOptions) (runtime.Object, error) {
|
||||
nsObj, err := r.Get(ctx, name)
|
||||
nsObj, err := r.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -196,8 +196,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -71,7 +71,7 @@ func TestCreateSetsFields(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
object, err := storage.Get(ctx, "foo")
|
||||
object, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package namespace
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -26,7 +27,7 @@ import (
|
|||
type Registry interface {
|
||||
ListNamespaces(ctx api.Context, options *api.ListOptions) (*api.NamespaceList, error)
|
||||
WatchNamespaces(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetNamespace(ctx api.Context, namespaceID string) (*api.Namespace, error)
|
||||
GetNamespace(ctx api.Context, namespaceID string, options *metav1.GetOptions) (*api.Namespace, error)
|
||||
CreateNamespace(ctx api.Context, namespace *api.Namespace) error
|
||||
UpdateNamespace(ctx api.Context, namespace *api.Namespace) error
|
||||
DeleteNamespace(ctx api.Context, namespaceID string) error
|
||||
|
@ -55,8 +56,8 @@ func (s *storage) WatchNamespaces(ctx api.Context, options *api.ListOptions) (wa
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetNamespace(ctx api.Context, namespaceName string) (*api.Namespace, error) {
|
||||
obj, err := s.Get(ctx, namespaceName)
|
||||
func (s *storage) GetNamespace(ctx api.Context, namespaceName string, options *metav1.GetOptions) (*api.Namespace, error) {
|
||||
obj, err := s.Get(ctx, namespaceName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/api/v1"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/kubelet/client"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/node"
|
||||
|
@ -58,8 +59,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
@ -118,7 +119,7 @@ func NewStorage(opts generic.RESTOptions, kubeletClientConfig client.KubeletClie
|
|||
|
||||
// Build a NodeGetter that looks up nodes using the REST handler
|
||||
nodeGetter := client.NodeGetterFunc(func(nodeName string) (*v1.Node, error) {
|
||||
obj, err := nodeREST.Get(api.NewContext(), nodeName)
|
||||
obj, err := nodeREST.Get(api.NewContext(), nodeName, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package node
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -27,7 +28,7 @@ type Registry interface {
|
|||
ListNodes(ctx api.Context, options *api.ListOptions) (*api.NodeList, error)
|
||||
CreateNode(ctx api.Context, node *api.Node) error
|
||||
UpdateNode(ctx api.Context, node *api.Node) error
|
||||
GetNode(ctx api.Context, nodeID string) (*api.Node, error)
|
||||
GetNode(ctx api.Context, nodeID string, options *metav1.GetOptions) (*api.Node, error)
|
||||
DeleteNode(ctx api.Context, nodeID string) error
|
||||
WatchNodes(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -66,8 +67,8 @@ func (s *storage) WatchNodes(ctx api.Context, options *api.ListOptions) (watch.I
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetNode(ctx api.Context, name string) (*api.Node, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetNode(ctx api.Context, name string, options *metav1.GetOptions) (*api.Node, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
"k8s.io/kubernetes/pkg/api/validation"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/kubelet/client"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
|
@ -132,7 +133,7 @@ func (nodeStatusStrategy) Canonicalize(obj runtime.Object) {
|
|||
|
||||
// ResourceGetter is an interface for retrieving resources by ResourceLocation.
|
||||
type ResourceGetter interface {
|
||||
Get(api.Context, string) (runtime.Object, error)
|
||||
Get(api.Context, string, *metav1.GetOptions) (runtime.Object, error)
|
||||
}
|
||||
|
||||
// NodeToSelectableFields returns a field set that represents the object.
|
||||
|
|
|
@ -19,6 +19,7 @@ package etcd
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/persistentvolume"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -89,8 +90,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -22,6 +22,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/resource"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -177,7 +178,7 @@ func TestUpdateStatus(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package etcd
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/persistentvolumeclaim"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -89,8 +90,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -22,6 +22,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/resource"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -174,7 +175,7 @@ func TestUpdateStatus(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -208,8 +208,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -25,6 +25,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
storeerr "k8s.io/kubernetes/pkg/api/errors/storage"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -209,7 +210,7 @@ func TestCreateSetsFields(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
ctx := api.NewDefaultContext()
|
||||
object, err := storage.Get(ctx, "foo")
|
||||
object, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -400,7 +401,7 @@ func TestEtcdCreate(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
_, err = storage.Get(ctx, "foo")
|
||||
_, err = storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error %v", err)
|
||||
}
|
||||
|
@ -429,7 +430,7 @@ func TestEtcdCreateBindingNoPod(t *testing.T) {
|
|||
t.Fatalf("Unexpected error returned: %#v", err)
|
||||
}
|
||||
|
||||
_, err = storage.Get(ctx, "foo")
|
||||
_, err = storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err == nil {
|
||||
t.Fatalf("Expected not-found-error but got nothing")
|
||||
}
|
||||
|
@ -474,7 +475,7 @@ func TestEtcdCreateWithContainersNotFound(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error %v", err)
|
||||
}
|
||||
|
@ -535,7 +536,7 @@ func TestEtcdCreateWithExistingContainers(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
_, err = storage.Get(ctx, "foo")
|
||||
_, err = storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error %v", err)
|
||||
}
|
||||
|
@ -587,7 +588,7 @@ func TestEtcdCreateBinding(t *testing.T) {
|
|||
t.Errorf("%s: unexpected error: %v", k, err)
|
||||
} else if err == nil {
|
||||
// If bind succeeded, verify Host field in pod's Spec.
|
||||
pod, err := storage.Get(ctx, validNewPod().ObjectMeta.Name)
|
||||
pod, err := storage.Get(ctx, validNewPod().ObjectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("%s: unexpected error: %v", k, err)
|
||||
} else if pod.(*api.Pod).Spec.NodeName != test.binding.Target.Name {
|
||||
|
@ -614,7 +615,7 @@ func TestEtcdUpdateNotScheduled(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, validNewPod().ObjectMeta.Name)
|
||||
obj, err := storage.Get(ctx, validNewPod().ObjectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -682,7 +683,7 @@ func TestEtcdUpdateScheduled(t *testing.T) {
|
|||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -762,7 +763,7 @@ func TestEtcdUpdateStatus(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -73,7 +73,7 @@ func (r *EvictionREST) New() runtime.Object {
|
|||
func (r *EvictionREST) Create(ctx api.Context, obj runtime.Object) (runtime.Object, error) {
|
||||
eviction := obj.(*policy.Eviction)
|
||||
|
||||
obj, err := r.store.Get(ctx, eviction.Name)
|
||||
obj, err := r.store.Get(ctx, eviction.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -28,6 +28,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
"k8s.io/kubernetes/pkg/api/validation"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/kubelet/client"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
|
@ -196,11 +197,11 @@ func PodToSelectableFields(pod *api.Pod) fields.Set {
|
|||
|
||||
// ResourceGetter is an interface for retrieving resources by ResourceLocation.
|
||||
type ResourceGetter interface {
|
||||
Get(api.Context, string) (runtime.Object, error)
|
||||
Get(api.Context, string, *metav1.GetOptions) (runtime.Object, error)
|
||||
}
|
||||
|
||||
func getPod(getter ResourceGetter, ctx api.Context, name string) (*api.Pod, error) {
|
||||
obj, err := getter.Get(ctx, name)
|
||||
obj, err := getter.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
apitesting "k8s.io/kubernetes/pkg/api/testing"
|
||||
"k8s.io/kubernetes/pkg/apimachinery/registered"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/runtime"
|
||||
|
@ -149,7 +150,7 @@ type mockPodGetter struct {
|
|||
pod *api.Pod
|
||||
}
|
||||
|
||||
func (g mockPodGetter) Get(api.Context, string) (runtime.Object, error) {
|
||||
func (g mockPodGetter) Get(api.Context, string, *metav1.GetOptions) (runtime.Object, error) {
|
||||
return g.pod, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@ package etcd
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/resourcequota"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -89,8 +90,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -22,6 +22,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/resource"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -84,7 +85,7 @@ func TestCreateSetsFields(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
object, err := storage.Get(ctx, "foo")
|
||||
object, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -187,7 +188,7 @@ func TestUpdateStatus(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
rqOut := obj.(*api.ResourceQuota)
|
||||
// only compare the meaningful update b/c we can't compare due to metadata
|
||||
if !api.Semantic.DeepEqual(resourcequotaIn.Status, rqOut.Status) {
|
||||
|
|
|
@ -19,6 +19,7 @@ package secret
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -26,7 +27,7 @@ import (
|
|||
type Registry interface {
|
||||
ListSecrets(ctx api.Context, options *api.ListOptions) (*api.SecretList, error)
|
||||
WatchSecrets(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetSecret(ctx api.Context, name string) (*api.Secret, error)
|
||||
GetSecret(ctx api.Context, name string, options *metav1.GetOptions) (*api.Secret, error)
|
||||
CreateSecret(ctx api.Context, Secret *api.Secret) (*api.Secret, error)
|
||||
UpdateSecret(ctx api.Context, Secret *api.Secret) (*api.Secret, error)
|
||||
DeleteSecret(ctx api.Context, name string) error
|
||||
|
@ -55,8 +56,8 @@ func (s *storage) WatchSecrets(ctx api.Context, options *api.ListOptions) (watch
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetSecret(ctx api.Context, name string) (*api.Secret, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetSecret(ctx api.Context, name string, options *metav1.GetOptions) (*api.Secret, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package etcd
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -87,8 +88,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -29,7 +29,7 @@ import (
|
|||
type Registry interface {
|
||||
ListServices(ctx api.Context, options *api.ListOptions) (*api.ServiceList, error)
|
||||
CreateService(ctx api.Context, svc *api.Service) (*api.Service, error)
|
||||
GetService(ctx api.Context, name string) (*api.Service, error)
|
||||
GetService(ctx api.Context, name string, options *metav1.GetOptions) (*api.Service, error)
|
||||
DeleteService(ctx api.Context, name string) error
|
||||
UpdateService(ctx api.Context, svc *api.Service) (*api.Service, error)
|
||||
WatchServices(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
|
@ -63,8 +63,8 @@ func (s *storage) CreateService(ctx api.Context, svc *api.Service) (*api.Service
|
|||
return obj.(*api.Service), nil
|
||||
}
|
||||
|
||||
func (s *storage) GetService(ctx api.Context, name string) (*api.Service, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetService(ctx api.Context, name string, options *metav1.GetOptions) (*api.Service, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -206,7 +206,7 @@ func (rs *REST) Create(ctx api.Context, obj runtime.Object) (runtime.Object, err
|
|||
}
|
||||
|
||||
func (rs *REST) Delete(ctx api.Context, id string) (runtime.Object, error) {
|
||||
service, err := rs.registry.GetService(ctx, id)
|
||||
service, err := rs.registry.GetService(ctx, id, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -248,8 +248,8 @@ func (rs *REST) Delete(ctx api.Context, id string) (runtime.Object, error) {
|
|||
return &metav1.Status{Status: metav1.StatusSuccess}, nil
|
||||
}
|
||||
|
||||
func (rs *REST) Get(ctx api.Context, id string) (runtime.Object, error) {
|
||||
return rs.registry.GetService(ctx, id)
|
||||
func (rs *REST) Get(ctx api.Context, id string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return rs.registry.GetService(ctx, id, options)
|
||||
}
|
||||
|
||||
func (rs *REST) List(ctx api.Context, options *api.ListOptions) (runtime.Object, error) {
|
||||
|
@ -369,7 +369,7 @@ func (rs *REST) healthCheckNodePortUpdate(oldService, service *api.Service) (boo
|
|||
}
|
||||
|
||||
func (rs *REST) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectInfo) (runtime.Object, bool, error) {
|
||||
oldService, err := rs.registry.GetService(ctx, name)
|
||||
oldService, err := rs.registry.GetService(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, false, err
|
||||
}
|
||||
|
@ -476,7 +476,7 @@ func (rs *REST) ResourceLocation(ctx api.Context, id string) (*url.URL, http.Rou
|
|||
|
||||
// If a port *number* was specified, find the corresponding service port name
|
||||
if portNum, err := strconv.ParseInt(portStr, 10, 64); err == nil {
|
||||
svc, err := rs.registry.GetService(ctx, svcName)
|
||||
svc, err := rs.registry.GetService(ctx, svcName, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
@ -494,7 +494,7 @@ func (rs *REST) ResourceLocation(ctx api.Context, id string) (*url.URL, http.Rou
|
|||
}
|
||||
}
|
||||
|
||||
eps, err := rs.endpoints.GetEndpoints(ctx, svcName)
|
||||
eps, err := rs.endpoints.GetEndpoints(ctx, svcName, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/api/service"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service/ipallocator"
|
||||
"k8s.io/kubernetes/pkg/registry/core/service/portallocator"
|
||||
"k8s.io/kubernetes/pkg/registry/registrytest"
|
||||
|
@ -107,7 +108,7 @@ func TestServiceRegistryCreate(t *testing.T) {
|
|||
if !makeIPNet(t).Contains(net.ParseIP(created_service.Spec.ClusterIP)) {
|
||||
t.Errorf("Unexpected ClusterIP: %s", created_service.Spec.ClusterIP)
|
||||
}
|
||||
srv, err := registry.GetService(ctx, svc.Name)
|
||||
srv, err := registry.GetService(ctx, svc.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -225,7 +226,7 @@ func TestServiceRegistryCreateMultiNodePortsService(t *testing.T) {
|
|||
if !reflect.DeepEqual(serviceNodePorts, test.expectNodePorts) {
|
||||
t.Errorf("Expected %v, but got %v", test.expectNodePorts, serviceNodePorts)
|
||||
}
|
||||
srv, err := registry.GetService(ctx, test.name)
|
||||
srv, err := registry.GetService(ctx, test.name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -410,7 +411,7 @@ func TestServiceRegistryExternalService(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("Failed to create service: %#v", err)
|
||||
}
|
||||
srv, err := registry.GetService(ctx, svc.Name)
|
||||
srv, err := registry.GetService(ctx, svc.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -545,7 +546,7 @@ func TestServiceRegistryGet(t *testing.T) {
|
|||
Selector: map[string]string{"bar": "baz"},
|
||||
},
|
||||
})
|
||||
storage.Get(ctx, "foo")
|
||||
storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if e, a := "foo", registry.GottenID; e != a {
|
||||
t.Errorf("Expected %v, but got %v", e, a)
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package serviceaccount
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -26,7 +27,7 @@ import (
|
|||
type Registry interface {
|
||||
ListServiceAccounts(ctx api.Context, options *api.ListOptions) (*api.ServiceAccountList, error)
|
||||
WatchServiceAccounts(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetServiceAccount(ctx api.Context, name string) (*api.ServiceAccount, error)
|
||||
GetServiceAccount(ctx api.Context, name string, options *metav1.GetOptions) (*api.ServiceAccount, error)
|
||||
CreateServiceAccount(ctx api.Context, ServiceAccount *api.ServiceAccount) error
|
||||
UpdateServiceAccount(ctx api.Context, ServiceAccount *api.ServiceAccount) error
|
||||
DeleteServiceAccount(ctx api.Context, name string) error
|
||||
|
@ -55,8 +56,8 @@ func (s *storage) WatchServiceAccounts(ctx api.Context, options *api.ListOptions
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetServiceAccount(ctx api.Context, name string) (*api.ServiceAccount, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetServiceAccount(ctx api.Context, name string, options *metav1.GetOptions) (*api.ServiceAccount, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -62,8 +62,8 @@ func (r *ScaleREST) New() runtime.Object {
|
|||
return &extensions.Scale{}
|
||||
}
|
||||
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
rc, err := (*r.registry).GetController(ctx, name)
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
rc, err := (*r.registry).GetController(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, errors.NewNotFound(extensions.Resource("replicationcontrollers/scale"), name)
|
||||
}
|
||||
|
@ -71,7 +71,7 @@ func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
|||
}
|
||||
|
||||
func (r *ScaleREST) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectInfo) (runtime.Object, bool, error) {
|
||||
rc, err := (*r.registry).GetController(ctx, name)
|
||||
rc, err := (*r.registry).GetController(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, false, errors.NewNotFound(extensions.Resource("replicationcontrollers/scale"), name)
|
||||
}
|
||||
|
|
|
@ -95,7 +95,7 @@ func TestGet(t *testing.T) {
|
|||
if err := si.Create(ctx, key, &validController, nil, 0); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -125,7 +125,7 @@ func TestUpdate(t *testing.T) {
|
|||
if _, _, err := storage.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/extensions/daemonset"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -100,8 +101,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -124,8 +124,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
@ -214,8 +214,8 @@ func (r *ScaleREST) New() runtime.Object {
|
|||
return &extensions.Scale{}
|
||||
}
|
||||
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
deployment, err := r.registry.GetDeployment(ctx, name)
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
deployment, err := r.registry.GetDeployment(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, errors.NewNotFound(extensions.Resource("deployments/scale"), name)
|
||||
}
|
||||
|
@ -227,7 +227,7 @@ func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
|||
}
|
||||
|
||||
func (r *ScaleREST) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectInfo) (runtime.Object, bool, error) {
|
||||
deployment, err := r.registry.GetDeployment(ctx, name)
|
||||
deployment, err := r.registry.GetDeployment(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, false, errors.NewNotFound(extensions.Resource("deployments/scale"), name)
|
||||
}
|
||||
|
|
|
@ -219,7 +219,7 @@ func TestScaleGet(t *testing.T) {
|
|||
Selector: validDeployment.Spec.Selector,
|
||||
},
|
||||
}
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
}
|
||||
|
@ -250,7 +250,7 @@ func TestScaleUpdate(t *testing.T) {
|
|||
if _, _, err := storage.Scale.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("error updating scale %v: %v", update, err)
|
||||
}
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
}
|
||||
|
@ -289,7 +289,7 @@ func TestStatusUpdate(t *testing.T) {
|
|||
if _, _, err := storage.Status.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.Deployment.Get(ctx, name)
|
||||
obj, err := storage.Deployment.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -344,7 +344,7 @@ func TestEtcdCreateDeploymentRollback(t *testing.T) {
|
|||
t.Errorf("%s: unexpected error: %v", k, err)
|
||||
} else if err == nil {
|
||||
// If rollback succeeded, verify Rollback field of deployment
|
||||
d, err := storage.Deployment.Get(ctx, validNewDeployment().ObjectMeta.Name)
|
||||
d, err := storage.Deployment.Get(ctx, validNewDeployment().ObjectMeta.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("%s: unexpected error: %v", k, err)
|
||||
} else if !reflect.DeepEqual(*d.(*extensions.Deployment).Spec.RollbackTo, test.rollback.RollbackTo) {
|
||||
|
@ -377,7 +377,7 @@ func TestEtcdCreateDeploymentRollbackNoDeployment(t *testing.T) {
|
|||
t.Fatalf("Unexpected error returned: %#v", err)
|
||||
}
|
||||
|
||||
_, err = storage.Deployment.Get(ctx, name)
|
||||
_, err = storage.Deployment.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err == nil {
|
||||
t.Fatalf("Expected not-found-error but got nothing")
|
||||
}
|
||||
|
|
|
@ -22,12 +22,13 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// Registry is an interface for things that know how to store Deployments.
|
||||
type Registry interface {
|
||||
ListDeployments(ctx api.Context, options *api.ListOptions) (*extensions.DeploymentList, error)
|
||||
GetDeployment(ctx api.Context, deploymentID string) (*extensions.Deployment, error)
|
||||
GetDeployment(ctx api.Context, deploymentID string, options *metav1.GetOptions) (*extensions.Deployment, error)
|
||||
CreateDeployment(ctx api.Context, deployment *extensions.Deployment) (*extensions.Deployment, error)
|
||||
UpdateDeployment(ctx api.Context, deployment *extensions.Deployment) (*extensions.Deployment, error)
|
||||
DeleteDeployment(ctx api.Context, deploymentID string) error
|
||||
|
@ -54,8 +55,8 @@ func (s *storage) ListDeployments(ctx api.Context, options *api.ListOptions) (*e
|
|||
return obj.(*extensions.DeploymentList), err
|
||||
}
|
||||
|
||||
func (s *storage) GetDeployment(ctx api.Context, deploymentID string) (*extensions.Deployment, error) {
|
||||
obj, err := s.Get(ctx, deploymentID)
|
||||
func (s *storage) GetDeployment(ctx api.Context, deploymentID string, options *metav1.GetOptions) (*extensions.Deployment, error) {
|
||||
obj, err := s.Get(ctx, deploymentID, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
ingress "k8s.io/kubernetes/pkg/registry/extensions/ingress"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -99,8 +100,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -26,6 +26,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
extvalidation "k8s.io/kubernetes/pkg/apis/extensions/validation"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/extensions/replicaset"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -123,8 +124,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
@ -144,8 +145,8 @@ func (r *ScaleREST) New() runtime.Object {
|
|||
return &extensions.Scale{}
|
||||
}
|
||||
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
rs, err := r.registry.GetReplicaSet(ctx, name)
|
||||
func (r *ScaleREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
rs, err := r.registry.GetReplicaSet(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, errors.NewNotFound(extensions.Resource("replicasets/scale"), name)
|
||||
}
|
||||
|
@ -157,7 +158,7 @@ func (r *ScaleREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
|||
}
|
||||
|
||||
func (r *ScaleREST) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectInfo) (runtime.Object, bool, error) {
|
||||
rs, err := r.registry.GetReplicaSet(ctx, name)
|
||||
rs, err := r.registry.GetReplicaSet(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, false, errors.NewNotFound(extensions.Resource("replicasets/scale"), name)
|
||||
}
|
||||
|
|
|
@ -153,7 +153,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
modifiedSno.Status.ObservedGeneration = 10
|
||||
ctx := api.NewDefaultContext()
|
||||
rs, err := createReplicaSet(storage.ReplicaSet, modifiedSno, t)
|
||||
etcdRS, err := storage.ReplicaSet.Get(ctx, rs.Name)
|
||||
etcdRS, err := storage.ReplicaSet.Get(ctx, rs.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -170,7 +170,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
etcdRS, err = storage.ReplicaSet.Get(ctx, rs.Name)
|
||||
etcdRS, err = storage.ReplicaSet.Get(ctx, rs.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -185,7 +185,7 @@ func TestGenerationNumber(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
etcdRS, err = storage.ReplicaSet.Get(ctx, rs.Name)
|
||||
etcdRS, err = storage.ReplicaSet.Get(ctx, rs.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
|
@ -274,7 +274,7 @@ func TestScaleGet(t *testing.T) {
|
|||
Selector: validReplicaSet.Spec.Selector,
|
||||
},
|
||||
}
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
got := obj.(*extensions.Scale)
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
|
@ -312,7 +312,7 @@ func TestScaleUpdate(t *testing.T) {
|
|||
t.Fatalf("error updating scale %v: %v", update, err)
|
||||
}
|
||||
|
||||
obj, err := storage.Scale.Get(ctx, name)
|
||||
obj, err := storage.Scale.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("error fetching scale for %s: %v", name, err)
|
||||
}
|
||||
|
@ -352,7 +352,7 @@ func TestStatusUpdate(t *testing.T) {
|
|||
if _, _, err := storage.Status.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err := storage.ReplicaSet.Get(ctx, "foo")
|
||||
obj, err := storage.ReplicaSet.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -31,7 +32,7 @@ import (
|
|||
type Registry interface {
|
||||
ListReplicaSets(ctx api.Context, options *api.ListOptions) (*extensions.ReplicaSetList, error)
|
||||
WatchReplicaSets(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetReplicaSet(ctx api.Context, replicaSetID string) (*extensions.ReplicaSet, error)
|
||||
GetReplicaSet(ctx api.Context, replicaSetID string, options *metav1.GetOptions) (*extensions.ReplicaSet, error)
|
||||
CreateReplicaSet(ctx api.Context, replicaSet *extensions.ReplicaSet) (*extensions.ReplicaSet, error)
|
||||
UpdateReplicaSet(ctx api.Context, replicaSet *extensions.ReplicaSet) (*extensions.ReplicaSet, error)
|
||||
DeleteReplicaSet(ctx api.Context, replicaSetID string) error
|
||||
|
@ -63,8 +64,8 @@ func (s *storage) WatchReplicaSets(ctx api.Context, options *api.ListOptions) (w
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetReplicaSet(ctx api.Context, replicaSetID string) (*extensions.ReplicaSet, error) {
|
||||
obj, err := s.Get(ctx, replicaSetID)
|
||||
func (s *storage) GetReplicaSet(ctx api.Context, replicaSetID string, options *metav1.GetOptions) (*extensions.ReplicaSet, error) {
|
||||
obj, err := s.Get(ctx, replicaSetID, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -27,7 +28,7 @@ import (
|
|||
type Registry interface {
|
||||
ListThirdPartyResourceData(ctx api.Context, options *api.ListOptions) (*extensions.ThirdPartyResourceDataList, error)
|
||||
WatchThirdPartyResourceData(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
GetThirdPartyResourceData(ctx api.Context, name string) (*extensions.ThirdPartyResourceData, error)
|
||||
GetThirdPartyResourceData(ctx api.Context, name string, options *metav1.GetOptions) (*extensions.ThirdPartyResourceData, error)
|
||||
CreateThirdPartyResourceData(ctx api.Context, resource *extensions.ThirdPartyResourceData) (*extensions.ThirdPartyResourceData, error)
|
||||
UpdateThirdPartyResourceData(ctx api.Context, resource *extensions.ThirdPartyResourceData) (*extensions.ThirdPartyResourceData, error)
|
||||
DeleteThirdPartyResourceData(ctx api.Context, name string) error
|
||||
|
@ -56,8 +57,8 @@ func (s *storage) WatchThirdPartyResourceData(ctx api.Context, options *api.List
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetThirdPartyResourceData(ctx api.Context, name string) (*extensions.ThirdPartyResourceData, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetThirdPartyResourceData(ctx api.Context, name string, options *metav1.GetOptions) (*extensions.ThirdPartyResourceData, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -479,14 +479,13 @@ func (e *Store) Update(ctx api.Context, name string, objInfo rest.UpdatedObjectI
|
|||
}
|
||||
|
||||
// Get retrieves the item from storage.
|
||||
func (e *Store) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
func (e *Store) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
obj := e.NewFunc()
|
||||
key, err := e.KeyFunc(ctx, name)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// TODO: Once we pass GetOptions to this method, pass the ResourceVersion from it.
|
||||
if err := e.Storage.Get(ctx, key, "", obj, false); err != nil {
|
||||
if err := e.Storage.Get(ctx, key, options.ResourceVersion, obj, false); err != nil {
|
||||
return nil, storeerr.InterpretGetError(err, e.QualifiedResource, name)
|
||||
}
|
||||
if e.Decorator != nil {
|
||||
|
@ -936,7 +935,7 @@ func exportObjectMeta(accessor meta.Object, exact bool) {
|
|||
|
||||
// Implements the rest.Exporter interface
|
||||
func (e *Store) Export(ctx api.Context, name string, opts metav1.ExportOptions) (runtime.Object, error) {
|
||||
obj, err := e.Get(ctx, name)
|
||||
obj, err := e.Get(ctx, name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -296,7 +296,7 @@ func TestStoreCreate(t *testing.T) {
|
|||
}
|
||||
|
||||
// get the object
|
||||
checkobj, err := registry.Get(testContext, podA.Name)
|
||||
checkobj, err := registry.Get(testContext, podA.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -344,7 +344,7 @@ func updateAndVerify(t *testing.T, ctx api.Context, registry *Store, pod *api.Po
|
|||
t.Errorf("Unexpected error: %v", err)
|
||||
return false
|
||||
}
|
||||
checkObj, err := registry.Get(ctx, pod.Name)
|
||||
checkObj, err := registry.Get(ctx, pod.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
return false
|
||||
|
@ -429,7 +429,7 @@ func TestNoOpUpdates(t *testing.T) {
|
|||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
||||
createdPod, err := registry.Get(api.NewDefaultContext(), "foo")
|
||||
createdPod, err := registry.Get(api.NewDefaultContext(), "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -445,7 +445,7 @@ func TestNoOpUpdates(t *testing.T) {
|
|||
t.Errorf("no-op update should return a correct value, got: %#v", updateResult)
|
||||
}
|
||||
|
||||
updatedPod, err := registry.Get(api.NewDefaultContext(), "foo")
|
||||
updatedPod, err := registry.Get(api.NewDefaultContext(), "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -572,7 +572,7 @@ func TestStoreGet(t *testing.T) {
|
|||
destroyFunc, registry := NewTestGenericStoreRegistry(t)
|
||||
defer destroyFunc()
|
||||
|
||||
_, err := registry.Get(testContext, podA.Name)
|
||||
_, err := registry.Get(testContext, podA.Name, &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -612,7 +612,7 @@ func TestStoreDelete(t *testing.T) {
|
|||
}
|
||||
|
||||
// try to get a item which should be deleted
|
||||
_, err = registry.Get(testContext, podA.Name)
|
||||
_, err = registry.Get(testContext, podA.Name, &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -679,7 +679,7 @@ func TestGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name)
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -694,7 +694,7 @@ func TestGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
}
|
||||
|
||||
// the object should still exist, because it still has a finalizer
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name)
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -708,7 +708,7 @@ func TestGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
// the pod should be removed, because its finalizer is removed
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name)
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -738,7 +738,7 @@ func TestNonGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
}
|
||||
|
||||
// the object should still exist
|
||||
obj, err := registry.Get(testContext, podWithFinalizer.Name)
|
||||
obj, err := registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -766,7 +766,7 @@ func TestNonGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
}
|
||||
|
||||
// the object should still exist, because it still has a finalizer
|
||||
obj, err = registry.Get(testContext, podWithFinalizer.Name)
|
||||
obj, err = registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -784,7 +784,7 @@ func TestNonGracefulStoreHandleFinalizers(t *testing.T) {
|
|||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
// the pod should be removed, because its finalizer is removed
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name)
|
||||
_, err = registry.Get(testContext, podWithFinalizer.Name, &metav1.GetOptions{})
|
||||
if !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -1032,7 +1032,7 @@ func TestStoreDeleteWithOrphanDependents(t *testing.T) {
|
|||
if err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
obj, err := registry.Get(testContext, tc.pod.Name)
|
||||
obj, err := registry.Get(testContext, tc.pod.Name, &metav1.GetOptions{})
|
||||
if tc.expectNotFound && (err == nil || !errors.IsNotFound(err)) {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
@ -1085,10 +1085,10 @@ func TestStoreDeleteCollection(t *testing.T) {
|
|||
t.Errorf("Unexpected number of pods deleted: %d, expected: 2", len(deletedPods.Items))
|
||||
}
|
||||
|
||||
if _, err := registry.Get(testContext, podA.Name); !errors.IsNotFound(err) {
|
||||
if _, err := registry.Get(testContext, podA.Name, &metav1.GetOptions{}); !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
if _, err := registry.Get(testContext, podB.Name); !errors.IsNotFound(err) {
|
||||
if _, err := registry.Get(testContext, podB.Name, &metav1.GetOptions{}); !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
}
|
||||
|
@ -1125,10 +1125,10 @@ func TestStoreDeleteCollectionNotFound(t *testing.T) {
|
|||
}
|
||||
wg.Wait()
|
||||
|
||||
if _, err := registry.Get(testContext, podA.Name); !errors.IsNotFound(err) {
|
||||
if _, err := registry.Get(testContext, podA.Name, &metav1.GetOptions{}); !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
if _, err := registry.Get(testContext, podB.Name); !errors.IsNotFound(err) {
|
||||
if _, err := registry.Get(testContext, podB.Name, &metav1.GetOptions{}); !errors.IsNotFound(err) {
|
||||
t.Errorf("Unexpected error: %v", err)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package etcd
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
policyapi "k8s.io/kubernetes/pkg/apis/policy"
|
||||
"k8s.io/kubernetes/pkg/registry/cachesize"
|
||||
"k8s.io/kubernetes/pkg/registry/generic"
|
||||
|
@ -99,8 +100,8 @@ func (r *StatusREST) New() runtime.Object {
|
|||
}
|
||||
|
||||
// Get retrieves the object from the storage. It is required to support Patch.
|
||||
func (r *StatusREST) Get(ctx api.Context, name string) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name)
|
||||
func (r *StatusREST) Get(ctx api.Context, name string, options *metav1.GetOptions) (runtime.Object, error) {
|
||||
return r.store.Get(ctx, name, options)
|
||||
}
|
||||
|
||||
// Update alters the status subset of an object.
|
||||
|
|
|
@ -91,7 +91,7 @@ func TestStatusUpdate(t *testing.T) {
|
|||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
||||
obj, err := storage.Get(ctx, "foo")
|
||||
obj, err := storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("failed to get pdb: %v", err)
|
||||
}
|
||||
|
@ -110,7 +110,7 @@ func TestStatusUpdate(t *testing.T) {
|
|||
if _, _, err := statusStorage.Update(ctx, update.Name, rest.DefaultUpdatedObjectInfo(&update, api.Scheme)); err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
obj, err = storage.Get(ctx, "foo")
|
||||
obj, err = storage.Get(ctx, "foo", &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package clusterrole
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
@ -28,7 +29,7 @@ type Registry interface {
|
|||
ListClusterRoles(ctx api.Context, options *api.ListOptions) (*rbac.ClusterRoleList, error)
|
||||
CreateClusterRole(ctx api.Context, clusterRole *rbac.ClusterRole) error
|
||||
UpdateClusterRole(ctx api.Context, clusterRole *rbac.ClusterRole) error
|
||||
GetClusterRole(ctx api.Context, name string) (*rbac.ClusterRole, error)
|
||||
GetClusterRole(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.ClusterRole, error)
|
||||
DeleteClusterRole(ctx api.Context, name string) error
|
||||
WatchClusterRoles(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -67,8 +68,8 @@ func (s *storage) WatchClusterRoles(ctx api.Context, options *api.ListOptions) (
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetClusterRole(ctx api.Context, name string) (*rbac.ClusterRole, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetClusterRole(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.ClusterRole, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -86,5 +87,5 @@ type AuthorizerAdapter struct {
|
|||
}
|
||||
|
||||
func (a AuthorizerAdapter) GetClusterRole(name string) (*rbac.ClusterRole, error) {
|
||||
return a.Registry.GetClusterRole(api.NewContext(), name)
|
||||
return a.Registry.GetClusterRole(api.NewContext(), name, &metav1.GetOptions{})
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package clusterrolebinding
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
@ -28,7 +29,7 @@ type Registry interface {
|
|||
ListClusterRoleBindings(ctx api.Context, options *api.ListOptions) (*rbac.ClusterRoleBindingList, error)
|
||||
CreateClusterRoleBinding(ctx api.Context, clusterRoleBinding *rbac.ClusterRoleBinding) error
|
||||
UpdateClusterRoleBinding(ctx api.Context, clusterRoleBinding *rbac.ClusterRoleBinding) error
|
||||
GetClusterRoleBinding(ctx api.Context, name string) (*rbac.ClusterRoleBinding, error)
|
||||
GetClusterRoleBinding(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.ClusterRoleBinding, error)
|
||||
DeleteClusterRoleBinding(ctx api.Context, name string) error
|
||||
WatchClusterRoleBindings(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -67,8 +68,8 @@ func (s *storage) WatchClusterRoleBindings(ctx api.Context, options *api.ListOpt
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetClusterRoleBinding(ctx api.Context, name string) (*rbac.ClusterRoleBinding, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetClusterRoleBinding(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.ClusterRoleBinding, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package role
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
@ -28,7 +29,7 @@ type Registry interface {
|
|||
ListRoles(ctx api.Context, options *api.ListOptions) (*rbac.RoleList, error)
|
||||
CreateRole(ctx api.Context, role *rbac.Role) error
|
||||
UpdateRole(ctx api.Context, role *rbac.Role) error
|
||||
GetRole(ctx api.Context, name string) (*rbac.Role, error)
|
||||
GetRole(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.Role, error)
|
||||
DeleteRole(ctx api.Context, name string) error
|
||||
WatchRoles(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -67,8 +68,8 @@ func (s *storage) WatchRoles(ctx api.Context, options *api.ListOptions) (watch.I
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetRole(ctx api.Context, name string) (*rbac.Role, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetRole(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.Role, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -86,5 +87,5 @@ type AuthorizerAdapter struct {
|
|||
}
|
||||
|
||||
func (a AuthorizerAdapter) GetRole(namespace, name string) (*rbac.Role, error) {
|
||||
return a.Registry.GetRole(api.WithNamespace(api.NewContext(), namespace), name)
|
||||
return a.Registry.GetRole(api.WithNamespace(api.NewContext(), namespace), name, &metav1.GetOptions{})
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package rolebinding
|
|||
import (
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/rest"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
@ -28,7 +29,7 @@ type Registry interface {
|
|||
ListRoleBindings(ctx api.Context, options *api.ListOptions) (*rbac.RoleBindingList, error)
|
||||
CreateRoleBinding(ctx api.Context, roleBinding *rbac.RoleBinding) error
|
||||
UpdateRoleBinding(ctx api.Context, roleBinding *rbac.RoleBinding) error
|
||||
GetRoleBinding(ctx api.Context, name string) (*rbac.RoleBinding, error)
|
||||
GetRoleBinding(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.RoleBinding, error)
|
||||
DeleteRoleBinding(ctx api.Context, name string) error
|
||||
WatchRoleBindings(ctx api.Context, options *api.ListOptions) (watch.Interface, error)
|
||||
}
|
||||
|
@ -68,8 +69,8 @@ func (s *storage) WatchRoleBindings(ctx api.Context, options *api.ListOptions) (
|
|||
return s.Watch(ctx, options)
|
||||
}
|
||||
|
||||
func (s *storage) GetRoleBinding(ctx api.Context, name string) (*rbac.RoleBinding, error) {
|
||||
obj, err := s.Get(ctx, name)
|
||||
func (s *storage) GetRoleBinding(ctx api.Context, name string, options *metav1.GetOptions) (*rbac.RoleBinding, error) {
|
||||
obj, err := s.Get(ctx, name, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ import (
|
|||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -42,7 +43,7 @@ func (e *EndpointRegistry) ListEndpoints(ctx api.Context, options *api.ListOptio
|
|||
return e.Endpoints, e.Err
|
||||
}
|
||||
|
||||
func (e *EndpointRegistry) GetEndpoints(ctx api.Context, name string) (*api.Endpoints, error) {
|
||||
func (e *EndpointRegistry) GetEndpoints(ctx api.Context, name string, options *metav1.GetOptions) (*api.Endpoints, error) {
|
||||
// TODO: support namespaces in this mock
|
||||
e.lock.Lock()
|
||||
defer e.lock.Unlock()
|
||||
|
|
|
@ -26,6 +26,7 @@ import (
|
|||
"k8s.io/kubernetes/pkg/api/rest/resttest"
|
||||
"k8s.io/kubernetes/pkg/api/testapi"
|
||||
"k8s.io/kubernetes/pkg/apimachinery/registered"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/fields"
|
||||
"k8s.io/kubernetes/pkg/labels"
|
||||
genericregistry "k8s.io/kubernetes/pkg/registry/generic/registry"
|
||||
|
@ -180,7 +181,7 @@ func (t *Tester) getObject(ctx api.Context, obj runtime.Object) (runtime.Object,
|
|||
return nil, err
|
||||
}
|
||||
|
||||
result, err := t.storage.Get(ctx, accessor.GetName())
|
||||
result, err := t.storage.Get(ctx, accessor.GetName(), &metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ import (
|
|||
|
||||
"k8s.io/kubernetes/pkg/api"
|
||||
"k8s.io/kubernetes/pkg/api/errors"
|
||||
metav1 "k8s.io/kubernetes/pkg/apis/meta/v1"
|
||||
"k8s.io/kubernetes/pkg/watch"
|
||||
)
|
||||
|
||||
|
@ -83,7 +84,7 @@ func (r *NodeRegistry) UpdateNode(ctx api.Context, node *api.Node) error {
|
|||
return r.Err
|
||||
}
|
||||
|
||||
func (r *NodeRegistry) GetNode(ctx api.Context, nodeID string) (*api.Node, error) {
|
||||
func (r *NodeRegistry) GetNode(ctx api.Context, nodeID string, options *metav1.GetOptions) (*api.Node, error) {
|
||||
r.Lock()
|
||||
defer r.Unlock()
|
||||
if r.Err != nil {
|
||||
|
|
|
@ -85,7 +85,7 @@ func (r *ServiceRegistry) CreateService(ctx api.Context, svc *api.Service) (*api
|
|||
return svc, r.Err
|
||||
}
|
||||
|
||||
func (r *ServiceRegistry) GetService(ctx api.Context, id string) (*api.Service, error) {
|
||||
func (r *ServiceRegistry) GetService(ctx api.Context, id string, options *metav1.GetOptions) (*api.Service, error) {
|
||||
r.mu.Lock()
|
||||
defer r.mu.Unlock()
|
||||
|
||||
|
|
Loading…
Reference in New Issue