diff --git a/src/main/java/io/cryostat/discovery/KubeApiDiscovery.java b/src/main/java/io/cryostat/discovery/KubeApiDiscovery.java index 849843840..635c353ce 100644 --- a/src/main/java/io/cryostat/discovery/KubeApiDiscovery.java +++ b/src/main/java/io/cryostat/discovery/KubeApiDiscovery.java @@ -375,9 +375,12 @@ private Pair queryForNode( @ApplicationScoped static final class KubeConfig { + public static final String KUBERNETES_NAMESPACE_PATH = "/var/run/secrets/kubernetes.io/serviceaccount/namespace"; + private static final String OWN_NAMESPACE = "."; + @Inject Logger logger; @Inject FileSystem fs; @@ -389,8 +392,17 @@ static final class KubeConfig { private KubernetesClient kubeClient; - List getWatchNamespaces() { - return watchNamespaces.orElse(List.of()); + Collection getWatchNamespaces() { + return watchNamespaces.orElse(List.of(OWN_NAMESPACE)).stream() + .map( + n -> { + if (OWN_NAMESPACE.equals(n)) { + return getOwnNamespace(); + } + return n; + }) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); } String getOwnNamespace() {