diff --git a/src/renderer/components/+workloads-pods/pods.store.ts b/src/renderer/components/+workloads-pods/pods.store.ts index 6b248dceed..5a535cec66 100644 --- a/src/renderer/components/+workloads-pods/pods.store.ts +++ b/src/renderer/components/+workloads-pods/pods.store.ts @@ -4,6 +4,7 @@ import { KubeObjectStore } from "../../kube-object.store"; import { autobind, cpuUnitsToNumber, unitsToBytes } from "../../utils"; import { IPodMetrics, Pod, PodMetrics, podMetricsApi, podsApi } from "../../api/endpoints"; import { apiManager } from "../../api/api-manager"; +import { WorkloadKubeObject } from "../../api/workload-kube-object"; @autobind() export class PodsStore extends KubeObjectStore { @@ -31,6 +32,18 @@ export class PodsStore extends KubeObjectStore { } } + getPodsByOwner(workload: WorkloadKubeObject): Pod[] { + if (!workload) return []; + + return this.items.filter(pod => { + const owners = pod.getOwnerRefs(); + + if (!owners.length) return; + + return owners.find(owner => owner.uid === workload.getId()); + }); + } + getPodsByOwnerId(workloadId: string): Pod[] { return this.items.filter(pod => { return pod.getOwnerRefs().find(owner => owner.uid === workloadId);