aboutsummaryrefslogtreecommitdiff
path: root/plugin/kubernetes/namespace.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/kubernetes/namespace.go')
-rw-r--r--plugin/kubernetes/namespace.go21
1 files changed, 14 insertions, 7 deletions
diff --git a/plugin/kubernetes/namespace.go b/plugin/kubernetes/namespace.go
index 7dafc7ab3..6eab13867 100644
--- a/plugin/kubernetes/namespace.go
+++ b/plugin/kubernetes/namespace.go
@@ -1,20 +1,27 @@
package kubernetes
-// namespace checks if namespace n exists in this cluster. This returns true
-// even for non exposed namespaces, see namespaceExposed.
-func (k *Kubernetes) namespace(n string) bool {
- ns, err := k.APIConn.GetNamespaceByName(n)
+// filteredNamespaceExists checks if namespace exists in this cluster
+// according to any `namespace_labels` plugin configuration specified.
+// Returns true even for namespaces not exposed by plugin configuration,
+// see namespaceExposed.
+func (k *Kubernetes) filteredNamespaceExists(namespace string) bool {
+ ns, err := k.APIConn.GetNamespaceByName(namespace)
if err != nil {
return false
}
- return ns.ObjectMeta.Name == n
+ return ns.ObjectMeta.Name == namespace
}
-// namespaceExposed returns true when the namespace is exposed.
-func (k *Kubernetes) namespaceExposed(namespace string) bool {
+// configuredNamespace returns true when the namespace is exposed through the plugin
+// `namespaces` configuration.
+func (k *Kubernetes) configuredNamespace(namespace string) bool {
_, ok := k.Namespaces[namespace]
if len(k.Namespaces) > 0 && !ok {
return false
}
return true
}
+
+func (k *Kubernetes) namespaceExposed(namespace string) bool {
+ return k.configuredNamespace(namespace) && k.filteredNamespaceExists(namespace)
+}