mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-16 23:29:21 +00:00
Trigger function for secrets
This commit is contained in:
parent
e85b81bbee
commit
1a1d7205b4
@ -46,7 +46,7 @@ func NewREST(optsGetter generic.RESTOptionsGetter) *REST {
|
|||||||
|
|
||||||
TableConvertor: printerstorage.TableConvertor{TablePrinter: printers.NewTablePrinter().With(printersinternal.AddHandlers)},
|
TableConvertor: printerstorage.TableConvertor{TablePrinter: printers.NewTablePrinter().With(printersinternal.AddHandlers)},
|
||||||
}
|
}
|
||||||
options := &generic.StoreOptions{RESTOptions: optsGetter, AttrFunc: secret.GetAttrs}
|
options := &generic.StoreOptions{RESTOptions: optsGetter, AttrFunc: secret.GetAttrs, TriggerFunc: secret.SecretNameTriggerFunc}
|
||||||
if err := store.CompleteWithOptions(options); err != nil {
|
if err := store.CompleteWithOptions(options); err != nil {
|
||||||
panic(err) // TODO: Propagate error up
|
panic(err) // TODO: Propagate error up
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/validation/field"
|
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||||
"k8s.io/apiserver/pkg/registry/generic"
|
"k8s.io/apiserver/pkg/registry/generic"
|
||||||
"k8s.io/apiserver/pkg/registry/rest"
|
"k8s.io/apiserver/pkg/registry/rest"
|
||||||
apistorage "k8s.io/apiserver/pkg/storage"
|
pkgstorage "k8s.io/apiserver/pkg/storage"
|
||||||
"k8s.io/apiserver/pkg/storage/names"
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
"k8s.io/kubernetes/pkg/api/legacyscheme"
|
"k8s.io/kubernetes/pkg/api/legacyscheme"
|
||||||
api "k8s.io/kubernetes/pkg/apis/core"
|
api "k8s.io/kubernetes/pkg/apis/core"
|
||||||
@ -107,14 +107,21 @@ func GetAttrs(obj runtime.Object) (labels.Set, fields.Set, bool, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Matcher returns a generic matcher for a given label and field selector.
|
// Matcher returns a generic matcher for a given label and field selector.
|
||||||
func Matcher(label labels.Selector, field fields.Selector) apistorage.SelectionPredicate {
|
func Matcher(label labels.Selector, field fields.Selector) pkgstorage.SelectionPredicate {
|
||||||
return apistorage.SelectionPredicate{
|
return pkgstorage.SelectionPredicate{
|
||||||
Label: label,
|
Label: label,
|
||||||
Field: field,
|
Field: field,
|
||||||
GetAttrs: GetAttrs,
|
GetAttrs: GetAttrs,
|
||||||
|
IndexFields: []string{"metadata.name"},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func SecretNameTriggerFunc(obj runtime.Object) []pkgstorage.MatchValue {
|
||||||
|
secret := obj.(*api.Secret)
|
||||||
|
result := pkgstorage.MatchValue{IndexName: "metadata.name", Value: secret.ObjectMeta.Name}
|
||||||
|
return []pkgstorage.MatchValue{result}
|
||||||
|
}
|
||||||
|
|
||||||
// SelectableFields returns a field set that can be used for filter selection
|
// SelectableFields returns a field set that can be used for filter selection
|
||||||
func SelectableFields(obj *api.Secret) fields.Set {
|
func SelectableFields(obj *api.Secret) fields.Set {
|
||||||
objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&obj.ObjectMeta, true)
|
objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&obj.ObjectMeta, true)
|
||||||
|
Loading…
Reference in New Issue
Block a user