diff --git a/robusta_krr/core/integrations/kubernetes/__init__.py b/robusta_krr/core/integrations/kubernetes/__init__.py index f63f81b..b664754 100644 --- a/robusta_krr/core/integrations/kubernetes/__init__.py +++ b/robusta_krr/core/integrations/kubernetes/__init__.py @@ -202,10 +202,12 @@ def __build_scannable_object( kind = kind or item.__class__.__name__[2:] labels = {} - annotations = {} - if item.metadata.labels: + if type(item.metadata.labels) is ObjectLikeDict: + labels = item.metadata.labels.__dict__ + else: labels = item.metadata.labels + annotations = {} if item.metadata.annotations: if type(item.metadata.annotations) is ObjectLikeDict: annotations = item.metadata.annotations.__dict__ diff --git a/robusta_krr/core/runner.py b/robusta_krr/core/runner.py index 9a8b1a8..e8c6e7f 100644 --- a/robusta_krr/core/runner.py +++ b/robusta_krr/core/runner.py @@ -289,7 +289,10 @@ async def _collect_result(self) -> Result: if not clusters or len(clusters) == 1: cluster_name = clusters[0] if clusters else None # its none if krr is running inside cluster prometheus_loader = self._get_prometheus_loader(cluster_name) - cluster_summary = await prometheus_loader.get_cluster_summary() + if prometheus_loader: + cluster_summary = await prometheus_loader.get_cluster_summary() + else: + cluster_summary = {} else: cluster_summary = {} scans = await asyncio.gather(*[self._gather_object_allocations(k8s_object) for k8s_object in workloads])