Merge pull request #3178 from RolandMa1986/feat-group-api

filter groupbinding by user field
This commit is contained in:
KubeSphere CI Bot
2020-12-09 13:59:43 +08:00
committed by GitHub

View File

@@ -23,8 +23,11 @@ import (
"kubesphere.io/kubesphere/pkg/apiserver/query" "kubesphere.io/kubesphere/pkg/apiserver/query"
informers "kubesphere.io/kubesphere/pkg/client/informers/externalversions" informers "kubesphere.io/kubesphere/pkg/client/informers/externalversions"
"kubesphere.io/kubesphere/pkg/models/resources/v1alpha3" "kubesphere.io/kubesphere/pkg/models/resources/v1alpha3"
"kubesphere.io/kubesphere/pkg/utils/sliceutil"
) )
const User = "user"
type groupBindingGetter struct { type groupBindingGetter struct {
sharedInformers informers.SharedInformerFactory sharedInformers informers.SharedInformerFactory
} }
@@ -74,5 +77,10 @@ func (d *groupBindingGetter) filter(object runtime.Object, filter query.Filter)
return false return false
} }
return v1alpha3.DefaultObjectMetaFilter(groupbinding.ObjectMeta, filter) switch filter.Field {
case User:
return sliceutil.HasString(groupbinding.Users, string(filter.Value))
default:
return v1alpha3.DefaultObjectMetaFilter(groupbinding.ObjectMeta, filter)
}
} }