Partition watchers by namespace/name scope
This commit is contained in:

committed by
tinatingyu

parent
12ceec47aa
commit
1c2fa0c7f7
@@ -108,10 +108,9 @@ func (rs *REST) List(ctx context.Context, options *metainternalversion.ListOptio
|
||||
|
||||
func componentStatusPredicate(options *metainternalversion.ListOptions) storage.SelectionPredicate {
|
||||
pred := storage.SelectionPredicate{
|
||||
Label: labels.Everything(),
|
||||
Field: fields.Everything(),
|
||||
GetAttrs: nil,
|
||||
IndexFields: []string{},
|
||||
Label: labels.Everything(),
|
||||
Field: fields.Everything(),
|
||||
GetAttrs: nil,
|
||||
}
|
||||
if options != nil {
|
||||
if options.LabelSelector != nil {
|
||||
|
@@ -21,7 +21,6 @@ import (
|
||||
"k8s.io/apiserver/pkg/registry/generic"
|
||||
genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
|
||||
"k8s.io/apiserver/pkg/registry/rest"
|
||||
"k8s.io/apiserver/pkg/storage"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
"k8s.io/kubernetes/pkg/printers"
|
||||
printersinternal "k8s.io/kubernetes/pkg/printers/internalversion"
|
||||
@@ -52,7 +51,6 @@ func NewREST(optsGetter generic.RESTOptionsGetter) (*REST, error) {
|
||||
options := &generic.StoreOptions{
|
||||
RESTOptions: optsGetter,
|
||||
AttrFunc: configmap.GetAttrs,
|
||||
TriggerFunc: map[string]storage.IndexerFunc{"metadata.name": configmap.NameTriggerFunc},
|
||||
}
|
||||
if err := store.CompleteWithOptions(options); err != nil {
|
||||
return nil, err
|
||||
|
@@ -109,18 +109,12 @@ func GetAttrs(obj runtime.Object) (labels.Set, fields.Set, error) {
|
||||
// Matcher returns a selection predicate for a given label and field selector.
|
||||
func Matcher(label labels.Selector, field fields.Selector) pkgstorage.SelectionPredicate {
|
||||
return pkgstorage.SelectionPredicate{
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
IndexFields: []string{"metadata.name"},
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
}
|
||||
}
|
||||
|
||||
// NameTriggerFunc returns value metadata.namespace of given object.
|
||||
func NameTriggerFunc(obj runtime.Object) string {
|
||||
return obj.(*api.ConfigMap).ObjectMeta.Name
|
||||
}
|
||||
|
||||
// SelectableFields returns a field set that can be used for filter selection
|
||||
func SelectableFields(obj *api.ConfigMap) fields.Set {
|
||||
return generic.ObjectMetaFieldsSet(&obj.ObjectMeta, true)
|
||||
|
@@ -28,7 +28,6 @@ import (
|
||||
"k8s.io/apiserver/pkg/registry/generic"
|
||||
genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
|
||||
"k8s.io/apiserver/pkg/registry/rest"
|
||||
"k8s.io/apiserver/pkg/storage"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
k8s_api_v1 "k8s.io/kubernetes/pkg/apis/core/v1"
|
||||
"k8s.io/kubernetes/pkg/kubelet/client"
|
||||
@@ -112,7 +111,6 @@ func NewStorage(optsGetter generic.RESTOptionsGetter, kubeletClientConfig client
|
||||
options := &generic.StoreOptions{
|
||||
RESTOptions: optsGetter,
|
||||
AttrFunc: node.GetAttrs,
|
||||
TriggerFunc: map[string]storage.IndexerFunc{"metadata.name": node.NameTriggerFunc},
|
||||
}
|
||||
if err := store.CompleteWithOptions(options); err != nil {
|
||||
return nil, err
|
||||
|
@@ -223,18 +223,12 @@ func GetAttrs(obj runtime.Object) (labels.Set, fields.Set, error) {
|
||||
// MatchNode returns a generic matcher for a given label and field selector.
|
||||
func MatchNode(label labels.Selector, field fields.Selector) pkgstorage.SelectionPredicate {
|
||||
return pkgstorage.SelectionPredicate{
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
IndexFields: []string{"metadata.name"},
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
}
|
||||
}
|
||||
|
||||
// NameTriggerFunc returns value metadata.namespace of given object.
|
||||
func NameTriggerFunc(obj runtime.Object) string {
|
||||
return obj.(*api.Node).ObjectMeta.Name
|
||||
}
|
||||
|
||||
// ResourceLocation returns a URL and transport which one can use to send traffic for the specified node.
|
||||
func ResourceLocation(getter ResourceGetter, connection client.ConnectionInfoGetter, proxyTransport http.RoundTripper, ctx context.Context, id string) (*url.URL, http.RoundTripper, error) {
|
||||
schemeReq, name, portReq, valid := utilnet.SplitSchemeNamePort(id)
|
||||
|
@@ -20,7 +20,6 @@ import (
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/apiserver/pkg/registry/generic"
|
||||
genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
|
||||
"k8s.io/apiserver/pkg/storage"
|
||||
api "k8s.io/kubernetes/pkg/apis/core"
|
||||
"k8s.io/kubernetes/pkg/printers"
|
||||
printersinternal "k8s.io/kubernetes/pkg/printers/internalversion"
|
||||
@@ -51,7 +50,6 @@ func NewREST(optsGetter generic.RESTOptionsGetter) (*REST, error) {
|
||||
options := &generic.StoreOptions{
|
||||
RESTOptions: optsGetter,
|
||||
AttrFunc: secret.GetAttrs,
|
||||
TriggerFunc: map[string]storage.IndexerFunc{"metadata.name": secret.NameTriggerFunc},
|
||||
}
|
||||
if err := store.CompleteWithOptions(options); err != nil {
|
||||
return nil, err
|
||||
|
@@ -113,18 +113,12 @@ func GetAttrs(obj runtime.Object) (labels.Set, fields.Set, error) {
|
||||
// Matcher returns a selection predicate for a given label and field selector.
|
||||
func Matcher(label labels.Selector, field fields.Selector) pkgstorage.SelectionPredicate {
|
||||
return pkgstorage.SelectionPredicate{
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
IndexFields: []string{"metadata.name"},
|
||||
Label: label,
|
||||
Field: field,
|
||||
GetAttrs: GetAttrs,
|
||||
}
|
||||
}
|
||||
|
||||
// NameTriggerFunc returns value metadata.namespace of given object.
|
||||
func NameTriggerFunc(obj runtime.Object) string {
|
||||
return obj.(*api.Secret).ObjectMeta.Name
|
||||
}
|
||||
|
||||
// SelectableFields returns a field set that can be used for filter selection
|
||||
func SelectableFields(obj *api.Secret) fields.Set {
|
||||
objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&obj.ObjectMeta, true)
|
||||
|
Reference in New Issue
Block a user