From a23f38f2bdc17726510cda7732f23886a4f1849f Mon Sep 17 00:00:00 2001 From: Jari Kolehmainen Date: Tue, 12 Jan 2021 13:07:09 +0200 Subject: [PATCH] cleanup Signed-off-by: Jari Kolehmainen --- src/renderer/api/endpoints/daemon-set.api.ts | 6 +++--- src/renderer/api/endpoints/deployment.api.ts | 5 +++-- src/renderer/api/endpoints/job.api.ts | 6 +++--- src/renderer/api/endpoints/namespaces.api.ts | 5 +++-- src/renderer/api/endpoints/pods.api.ts | 8 ++++---- src/renderer/api/endpoints/replica-set.api.ts | 6 +++--- src/renderer/api/endpoints/stateful-set.api.ts | 6 +++--- src/renderer/components/+namespaces/namespace.store.ts | 4 ++-- .../components/+workloads-daemonsets/daemonsets.store.ts | 4 ++-- .../+workloads-deployments/deployments.store.ts | 4 ++-- src/renderer/components/+workloads-jobs/job.store.ts | 6 +++--- .../+workloads-replicasets/replicasets.store.ts | 6 +++--- .../+workloads-statefulsets/statefulset.store.ts | 4 ++-- .../components/resource-metrics/resource-metrics-text.tsx | 5 +++-- 14 files changed, 39 insertions(+), 36 deletions(-) diff --git a/src/renderer/api/endpoints/daemon-set.api.ts b/src/renderer/api/endpoints/daemon-set.api.ts index b77f6e9184..5f80a927d0 100644 --- a/src/renderer/api/endpoints/daemon-set.api.ts +++ b/src/renderer/api/endpoints/daemon-set.api.ts @@ -1,9 +1,9 @@ import get from "lodash/get"; -import { IPodContainer } from "./pods.api"; +import { IPodContainer, IPodMetrics } from "./pods.api"; import { IAffinity, WorkloadKubeObject } from "../workload-kube-object"; import { autobind } from "../../utils"; import { KubeApi } from "../kube-api"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; @autobind() export class DaemonSet extends WorkloadKubeObject { @@ -74,7 +74,7 @@ export class DaemonSet extends WorkloadKubeObject { export class DaemonSetApi extends KubeApi { - getMetrics(daemonsets: DaemonSet[], namespace: string, selector = ""): Promise { + getMetrics(daemonsets: DaemonSet[], namespace: string, selector = ""): Promise { const podSelector = daemonsets.map(daemonset => `${daemonset.getName()}-[[:alnum:]]{5}`).join("|"); const opts = { category: "pods", pods: podSelector, namespace, selector }; diff --git a/src/renderer/api/endpoints/deployment.api.ts b/src/renderer/api/endpoints/deployment.api.ts index 522097a561..200468b845 100644 --- a/src/renderer/api/endpoints/deployment.api.ts +++ b/src/renderer/api/endpoints/deployment.api.ts @@ -3,7 +3,8 @@ import moment from "moment"; import { IAffinity, WorkloadKubeObject } from "../workload-kube-object"; import { autobind } from "../../utils"; import { KubeApi } from "../kube-api"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; +import { IPodMetrics } from "./pods.api"; export class DeploymentApi extends KubeApi { protected getScaleApiUrl(params: { namespace: string; name: string }) { @@ -46,7 +47,7 @@ export class DeploymentApi extends KubeApi { }); } - getMetrics(deployments: Deployment[], namespace: string, selector = ""): Promise { + getMetrics(deployments: Deployment[], namespace: string, selector = ""): Promise { const podSelector = deployments.map(deployment => `${deployment.getName()}-[[:alnum:]]{9,}-[[:alnum:]]{5}`).join("|"); const opts = { category: "pods", pods: podSelector, namespace, selector }; diff --git a/src/renderer/api/endpoints/job.api.ts b/src/renderer/api/endpoints/job.api.ts index 538e329e93..b8fa0a862d 100644 --- a/src/renderer/api/endpoints/job.api.ts +++ b/src/renderer/api/endpoints/job.api.ts @@ -1,10 +1,10 @@ import get from "lodash/get"; import { autobind } from "../../utils"; import { IAffinity, WorkloadKubeObject } from "../workload-kube-object"; -import { IPodContainer } from "./pods.api"; +import { IPodContainer, IPodMetrics } from "./pods.api"; import { KubeApi } from "../kube-api"; import { JsonApiParams } from "../json-api"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; @autobind() export class Job extends WorkloadKubeObject { @@ -110,7 +110,7 @@ export class Job extends WorkloadKubeObject { export class JobApi extends KubeApi { - getMetrics(jobs: Job[], namespace: string, selector = ""): Promise { + getMetrics(jobs: Job[], namespace: string, selector = ""): Promise { const podSelector = jobs.map(job => `${job.getName()}-[[:alnum:]]{5}`).join("|"); const opts = { category: "pods", pods: podSelector, namespace, selector }; diff --git a/src/renderer/api/endpoints/namespaces.api.ts b/src/renderer/api/endpoints/namespaces.api.ts index a4d04bcb1a..6b8e41005f 100644 --- a/src/renderer/api/endpoints/namespaces.api.ts +++ b/src/renderer/api/endpoints/namespaces.api.ts @@ -1,7 +1,8 @@ import { KubeApi } from "../kube-api"; import { KubeObject } from "../kube-object"; import { autobind } from "../../utils"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; +import { IPodMetrics } from "./pods.api"; export enum NamespaceStatus { ACTIVE = "Active", @@ -24,7 +25,7 @@ export class Namespace extends KubeObject { } export class NamespaceApi extends KubeApi { - getMetrics(namespace: string, selector = ""): Promise { + getMetrics(namespace: string, selector = ""): Promise { const opts = { category: "pods", pods: ".*", namespace, selector }; return metricsApi.getMetrics({ diff --git a/src/renderer/api/endpoints/pods.api.ts b/src/renderer/api/endpoints/pods.api.ts index eca15251a7..9c80301bb0 100644 --- a/src/renderer/api/endpoints/pods.api.ts +++ b/src/renderer/api/endpoints/pods.api.ts @@ -33,14 +33,14 @@ export class PodsApi extends KubeApi { export interface IPodMetrics { [metric: string]: T; cpuUsage: T; - cpuRequests: T; - cpuLimits: T; memoryUsage: T; - memoryRequests: T; - memoryLimits: T; fsUsage: T; networkReceive: T; networkTransmit: T; + cpuRequests?: T; + cpuLimits?: T; + memoryRequests?: T; + memoryLimits?: T; } // Reference: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#read-log-pod-v1-core diff --git a/src/renderer/api/endpoints/replica-set.api.ts b/src/renderer/api/endpoints/replica-set.api.ts index 56b1abd4e5..b83b5fcd02 100644 --- a/src/renderer/api/endpoints/replica-set.api.ts +++ b/src/renderer/api/endpoints/replica-set.api.ts @@ -1,9 +1,9 @@ import get from "lodash/get"; import { autobind } from "../../utils"; import { WorkloadKubeObject } from "../workload-kube-object"; -import { IPodContainer, Pod } from "./pods.api"; +import { IPodContainer, IPodMetrics, Pod } from "./pods.api"; import { KubeApi } from "../kube-api"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; export class ReplicaSetApi extends KubeApi { protected getScaleApiUrl(params: { namespace: string; name: string }) { @@ -27,7 +27,7 @@ export class ReplicaSetApi extends KubeApi { }); } - getMetrics(replicasets: ReplicaSet[], namespace: string, selector = ""): Promise { + getMetrics(replicasets: ReplicaSet[], namespace: string, selector = ""): Promise { const podSelector = replicasets.map(replicaset => `${replicaset.getName()}-[[:alnum:]]{5}`).join("|"); const opts = { category: "pods", pods: podSelector, namespace, selector }; diff --git a/src/renderer/api/endpoints/stateful-set.api.ts b/src/renderer/api/endpoints/stateful-set.api.ts index ad7760e357..df612757e2 100644 --- a/src/renderer/api/endpoints/stateful-set.api.ts +++ b/src/renderer/api/endpoints/stateful-set.api.ts @@ -1,9 +1,9 @@ import get from "lodash/get"; -import { IPodContainer } from "./pods.api"; +import { IPodContainer, IPodMetrics } from "./pods.api"; import { IAffinity, WorkloadKubeObject } from "../workload-kube-object"; import { autobind } from "../../utils"; import { KubeApi } from "../kube-api"; -import { IResourceMetrics, metricsApi } from "./metrics.api"; +import { metricsApi } from "./metrics.api"; export class StatefulSetApi extends KubeApi { protected getScaleApiUrl(params: { namespace: string; name: string }) { @@ -27,7 +27,7 @@ export class StatefulSetApi extends KubeApi { }); } - getMetrics(statefulSets: StatefulSet[], namespace: string, selector = ""): Promise { + getMetrics(statefulSets: StatefulSet[], namespace: string, selector = ""): Promise { const podSelector = statefulSets.map(statefulset => `${statefulset.getName()}-[[:digit:]]+`).join("|"); const opts = { category: "pods", pods: podSelector, namespace, selector }; diff --git a/src/renderer/components/+namespaces/namespace.store.ts b/src/renderer/components/+namespaces/namespace.store.ts index 434834d1af..febfa26ecd 100644 --- a/src/renderer/components/+namespaces/namespace.store.ts +++ b/src/renderer/components/+namespaces/namespace.store.ts @@ -1,7 +1,7 @@ import { action, comparer, observable, reaction } from "mobx"; import { autobind, createStorage } from "../../utils"; import { KubeObjectStore } from "../../kube-object.store"; -import { INamespaceMetrics, Namespace, namespacesApi } from "../../api/endpoints"; +import { IPodMetrics, Namespace, namespacesApi } from "../../api/endpoints"; import { createPageParam } from "../../navigation"; import { apiManager } from "../../api/api-manager"; import { isAllowedResource } from "../../../common/rbac"; @@ -22,7 +22,7 @@ export const namespaceUrlParam = createPageParam({ export class NamespaceStore extends KubeObjectStore { api = namespacesApi; contextNs = observable.array(); - @observable metrics: INamespaceMetrics = null; + @observable metrics: IPodMetrics = null; constructor() { super(); diff --git a/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts b/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts index 2129d7b1b9..e5327fcd49 100644 --- a/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts +++ b/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts @@ -1,7 +1,7 @@ import { observable } from "mobx"; import { KubeObjectStore } from "../../kube-object.store"; import { autobind } from "../../utils"; -import { DaemonSet, daemonSetApi, IDaemonSetMetrics, Pod, PodStatus } from "../../api/endpoints"; +import { DaemonSet, daemonSetApi, IPodMetrics, Pod, PodStatus } from "../../api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; import { apiManager } from "../../api/api-manager"; @@ -9,7 +9,7 @@ import { apiManager } from "../../api/api-manager"; export class DaemonSetStore extends KubeObjectStore { api = daemonSetApi; - @observable metrics: IDaemonSetMetrics = null; + @observable metrics: IPodMetrics = null; async loadMetrics(daemonSet: DaemonSet) { this.metrics = await daemonSetApi.getMetrics([daemonSet], daemonSet.getNs(), ""); diff --git a/src/renderer/components/+workloads-deployments/deployments.store.ts b/src/renderer/components/+workloads-deployments/deployments.store.ts index c107711f1c..9ddcb1a722 100644 --- a/src/renderer/components/+workloads-deployments/deployments.store.ts +++ b/src/renderer/components/+workloads-deployments/deployments.store.ts @@ -1,5 +1,5 @@ import { observable } from "mobx"; -import { Deployment, deploymentApi, IDeploymentMetrics, PodStatus } from "../../api/endpoints"; +import { Deployment, deploymentApi, IPodMetrics, PodStatus } from "../../api/endpoints"; import { KubeObjectStore } from "../../kube-object.store"; import { autobind } from "../../utils"; import { podsStore } from "../+workloads-pods/pods.store"; @@ -8,7 +8,7 @@ import { apiManager } from "../../api/api-manager"; @autobind() export class DeploymentStore extends KubeObjectStore { api = deploymentApi; - @observable metrics: IDeploymentMetrics = null; + @observable metrics: IPodMetrics = null; protected sortItems(items: Deployment[]) { return super.sortItems(items, [ diff --git a/src/renderer/components/+workloads-jobs/job.store.ts b/src/renderer/components/+workloads-jobs/job.store.ts index a34d425fef..cf2eaf8d21 100644 --- a/src/renderer/components/+workloads-jobs/job.store.ts +++ b/src/renderer/components/+workloads-jobs/job.store.ts @@ -1,7 +1,7 @@ import { KubeObjectStore } from "../../kube-object.store"; import { autobind } from "../../utils"; -import { IJobMetrics, Job, jobApi } from "../../api/endpoints/job.api"; -import { CronJob, Pod, PodStatus } from "../../api/endpoints"; +import { Job, jobApi } from "../../api/endpoints/job.api"; +import { CronJob, IPodMetrics, Pod, PodStatus } from "../../api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; import { apiManager } from "../../api/api-manager"; import { observable } from "mobx"; @@ -10,7 +10,7 @@ import { observable } from "mobx"; export class JobStore extends KubeObjectStore { api = jobApi; - @observable metrics: IJobMetrics = null; + @observable metrics: IPodMetrics = null; async loadMetrics(job: Job) { this.metrics = await jobApi.getMetrics([job], job.getNs(), ""); diff --git a/src/renderer/components/+workloads-replicasets/replicasets.store.ts b/src/renderer/components/+workloads-replicasets/replicasets.store.ts index 34eee46222..815397aaec 100644 --- a/src/renderer/components/+workloads-replicasets/replicasets.store.ts +++ b/src/renderer/components/+workloads-replicasets/replicasets.store.ts @@ -1,15 +1,15 @@ import { observable } from "mobx"; import { autobind } from "../../utils"; import { KubeObjectStore } from "../../kube-object.store"; -import { Deployment, IReplicaSetMetrics, ReplicaSet, replicaSetApi } from "../../api/endpoints"; +import { Deployment, ReplicaSet, replicaSetApi } from "../../api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; import { apiManager } from "../../api/api-manager"; -import { PodStatus } from "../../api/endpoints/pods.api"; +import { IPodMetrics, PodStatus } from "../../api/endpoints/pods.api"; @autobind() export class ReplicaSetStore extends KubeObjectStore { api = replicaSetApi; - @observable metrics: IReplicaSetMetrics = null; + @observable metrics: IPodMetrics = null; async loadMetrics(replicaSet: ReplicaSet) { this.metrics = await replicaSetApi.getMetrics([replicaSet], replicaSet.getNs(), ""); diff --git a/src/renderer/components/+workloads-statefulsets/statefulset.store.ts b/src/renderer/components/+workloads-statefulsets/statefulset.store.ts index 33810b3172..699603d1f0 100644 --- a/src/renderer/components/+workloads-statefulsets/statefulset.store.ts +++ b/src/renderer/components/+workloads-statefulsets/statefulset.store.ts @@ -1,14 +1,14 @@ import { observable } from "mobx"; import { autobind } from "../../utils"; import { KubeObjectStore } from "../../kube-object.store"; -import { IStatefulSetMetrics, PodStatus, StatefulSet, statefulSetApi } from "../../api/endpoints"; +import { IPodMetrics, PodStatus, StatefulSet, statefulSetApi } from "../../api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; import { apiManager } from "../../api/api-manager"; @autobind() export class StatefulSetStore extends KubeObjectStore { api = statefulSetApi; - @observable metrics: IStatefulSetMetrics = null; + @observable metrics: IPodMetrics = null; async loadMetrics(statefulSet: StatefulSet) { this.metrics = await statefulSetApi.getMetrics([statefulSet], statefulSet.getNs(), ""); diff --git a/src/renderer/components/resource-metrics/resource-metrics-text.tsx b/src/renderer/components/resource-metrics/resource-metrics-text.tsx index 4f343c24cf..38d2f7f77d 100644 --- a/src/renderer/components/resource-metrics/resource-metrics-text.tsx +++ b/src/renderer/components/resource-metrics/resource-metrics-text.tsx @@ -1,11 +1,12 @@ import React from "react"; -import { getMetricLastPoints, IResourceMetrics, IMetrics } from "../../api/endpoints/metrics.api"; +import { IPodMetrics } from "../../api/endpoints"; +import { getMetricLastPoints, IMetrics } from "../../api/endpoints/metrics.api"; import { bytesToUnits } from "../../utils"; import { Badge } from "../badge"; import { DrawerItem } from "../drawer"; interface Props { - metrics: IResourceMetrics; + metrics: IPodMetrics; } export function ResourceMetricsText(props: Props) {