mirror of
https://github.com/rancher/norman.git
synced 2025-09-23 12:09:01 +00:00
Ensure namespaced scoped listers default to the correct namespace
This commit is contained in:
@@ -111,10 +111,14 @@ type {{.schema.CodeName}}Interface interface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type {{.schema.ID}}Lister struct {
|
type {{.schema.ID}}Lister struct {
|
||||||
|
ns string
|
||||||
controller *{{.schema.ID}}Controller
|
controller *{{.schema.ID}}Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *{{.schema.ID}}Lister) List(namespace string, selector labels.Selector) (ret []*{{.prefix}}{{.schema.CodeName}}, err error) {
|
func (l *{{.schema.ID}}Lister) List(namespace string, selector labels.Selector) (ret []*{{.prefix}}{{.schema.CodeName}}, err error) {
|
||||||
|
if namespace == "" {
|
||||||
|
namespace = l.ns
|
||||||
|
}
|
||||||
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
|
err = cache.ListAllByNamespace(l.controller.Informer().GetIndexer(), namespace, selector, func(obj interface{}) {
|
||||||
ret = append(ret, obj.(*{{.prefix}}{{.schema.CodeName}}))
|
ret = append(ret, obj.(*{{.prefix}}{{.schema.CodeName}}))
|
||||||
})
|
})
|
||||||
@@ -142,6 +146,7 @@ func (l *{{.schema.ID}}Lister) Get(namespace, name string) (*{{.prefix}}{{.schem
|
|||||||
}
|
}
|
||||||
|
|
||||||
type {{.schema.ID}}Controller struct {
|
type {{.schema.ID}}Controller struct {
|
||||||
|
ns string
|
||||||
controller.GenericController
|
controller.GenericController
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,6 +156,7 @@ func (c *{{.schema.ID}}Controller) Generic() controller.GenericController {
|
|||||||
|
|
||||||
func (c *{{.schema.ID}}Controller) Lister() {{.schema.CodeName}}Lister {
|
func (c *{{.schema.ID}}Controller) Lister() {{.schema.CodeName}}Lister {
|
||||||
return &{{.schema.ID}}Lister{
|
return &{{.schema.ID}}Lister{
|
||||||
|
ns: c.ns,
|
||||||
controller: c,
|
controller: c,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -224,6 +230,7 @@ func (s *{{.schema.ID}}Client) Controller() {{.schema.CodeName}}Controller {
|
|||||||
s.client.controllerFactory.ForResourceKind({{.schema.CodeName}}GroupVersionResource, {{.schema.CodeName}}GroupVersionKind.Kind, {{.schema | namespaced}}))
|
s.client.controllerFactory.ForResourceKind({{.schema.CodeName}}GroupVersionResource, {{.schema.CodeName}}GroupVersionKind.Kind, {{.schema | namespaced}}))
|
||||||
|
|
||||||
return &{{.schema.ID}}Controller{
|
return &{{.schema.ID}}Controller{
|
||||||
|
ns: s.ns,
|
||||||
GenericController: genericController,
|
GenericController: genericController,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user