diff --git a/compose/types/namespace.go b/compose/types/namespace.go index 8bded1e8e..ce66c762f 100644 --- a/compose/types/namespace.go +++ b/compose/types/namespace.go @@ -28,9 +28,10 @@ type ( } NamespaceFilter struct { - Query string `json:"query"` - Slug string `json:"slug"` - Name string `json:"name"` + NamespaceID []uint64 `json:"namespaceID"` + Query string `json:"query"` + Slug string `json:"slug"` + Name string `json:"name"` LabeledIDs []uint64 `json:"-"` Labels map[string]string `json:"labels,omitempty"` diff --git a/store/rdbms/compose_namespaces.go b/store/rdbms/compose_namespaces.go index 1df3f00bc..32a932f89 100644 --- a/store/rdbms/compose_namespaces.go +++ b/store/rdbms/compose_namespaces.go @@ -1,10 +1,11 @@ package rdbms import ( + "strings" + "github.com/Masterminds/squirrel" "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/pkg/filter" - "strings" ) func (s Store) convertComposeNamespaceFilter(f types.NamespaceFilter) (query squirrel.SelectBuilder, err error) { @@ -12,6 +13,10 @@ func (s Store) convertComposeNamespaceFilter(f types.NamespaceFilter) (query squ query = filter.StateCondition(query, "cns.deleted_at", f.Deleted) + if len(f.NamespaceID) > 0 { + query = query.Where(squirrel.Eq{"cns.id": f.NamespaceID}) + } + if len(f.LabeledIDs) > 0 { query = query.Where(squirrel.Eq{"cns.id": f.LabeledIDs}) }