From abd422367579e9b86b3900e6b4152b842ccc4e1c Mon Sep 17 00:00:00 2001 From: Violetta <38247153+vshakirova@users.noreply.github.com> Date: Sun, 13 Dec 2020 21:08:26 +0400 Subject: [PATCH] Add information about the startupProbe (#1538) Signed-off-by: vshakirova --- locales/en/messages.po | 4 ++ locales/fi/messages.po | 4 ++ locales/ru/messages.po | 4 ++ src/renderer/api/endpoints/deployment.api.ts | 47 +++++++++---------- src/renderer/api/endpoints/pods.api.ts | 5 ++ .../+workloads-pods/pod-details-container.tsx | 10 ++++ 6 files changed, 50 insertions(+), 24 deletions(-) diff --git a/locales/en/messages.po b/locales/en/messages.po index ec9ac00f25..e120570ac4 100644 --- a/locales/en/messages.po +++ b/locales/en/messages.po @@ -2664,6 +2664,10 @@ msgstr "Status" #~ msgid "Status URI" #~ msgstr "Status URI" +#: src/renderer/components/+workloads-pods/pod-details-container.tsx:140 +msgid "Startup" +msgstr "Startup" + #: src/renderer/components/+storage-volume-claims/volume-claim-details.tsx:56 #: src/renderer/components/layout/sidebar.tsx:85 msgid "Storage" diff --git a/locales/fi/messages.po b/locales/fi/messages.po index 02995c74db..2a8a650953 100644 --- a/locales/fi/messages.po +++ b/locales/fi/messages.po @@ -2646,6 +2646,10 @@ msgstr "" #~ msgid "Status URI" #~ msgstr "" +#: src/renderer/components/+workloads-pods/pod-details-container.tsx:140 +msgid "Startup" +msgstr "" + #: src/renderer/components/+storage-volume-claims/volume-claim-details.tsx:56 #: src/renderer/components/layout/sidebar.tsx:85 msgid "Storage" diff --git a/locales/ru/messages.po b/locales/ru/messages.po index 0f5fb2f9e2..6975d03529 100644 --- a/locales/ru/messages.po +++ b/locales/ru/messages.po @@ -2664,6 +2664,10 @@ msgstr "Статус" #~ msgid "Status URI" #~ msgstr "Адрес статуса" +#: src/renderer/components/+workloads-pods/pod-details-container.tsx:140 +msgid "Startup" +msgstr "Cтарт" + #: src/renderer/components/+storage-volume-claims/volume-claim-details.tsx:56 #: src/renderer/components/layout/sidebar.tsx:85 msgid "Storage" diff --git a/src/renderer/api/endpoints/deployment.api.ts b/src/renderer/api/endpoints/deployment.api.ts index d876616470..107e970d98 100644 --- a/src/renderer/api/endpoints/deployment.api.ts +++ b/src/renderer/api/endpoints/deployment.api.ts @@ -46,6 +46,26 @@ export class DeploymentApi extends KubeApi { } } +interface IContainerProbe { + httpGet?: { + path?: string; + port: number; + scheme: string; + host?: string; + }; + exec?: { + command: string[]; + }; + tcpSocket?: { + port: number; + }; + initialDelaySeconds?: number; + timeoutSeconds?: number; + periodSeconds?: number; + successThreshold?: number; + failureThreshold?: number; +} + @autobind() export class Deployment extends WorkloadKubeObject { static kind = "Deployment"; @@ -89,30 +109,9 @@ export class Deployment extends WorkloadKubeObject { name: string; mountPath: string; }[]; - livenessProbe?: { - httpGet: { - path: string; - port: number; - scheme: string; - }; - initialDelaySeconds: number; - timeoutSeconds: number; - periodSeconds: number; - successThreshold: number; - failureThreshold: number; - }; - readinessProbe?: { - httpGet: { - path: string; - port: number; - scheme: string; - }; - initialDelaySeconds: number; - timeoutSeconds: number; - periodSeconds: number; - successThreshold: number; - failureThreshold: number; - }; + livenessProbe?: IContainerProbe; + readinessProbe?: IContainerProbe; + startupProbe?: IContainerProbe; terminationMessagePath: string; terminationMessagePolicy: string; imagePullPolicy: string; diff --git a/src/renderer/api/endpoints/pods.api.ts b/src/renderer/api/endpoints/pods.api.ts index 447503558b..eca15251a7 100644 --- a/src/renderer/api/endpoints/pods.api.ts +++ b/src/renderer/api/endpoints/pods.api.ts @@ -112,6 +112,7 @@ export interface IPodContainer { }[]; livenessProbe?: IContainerProbe; readinessProbe?: IContainerProbe; + startupProbe?: IContainerProbe; imagePullPolicy: string; } @@ -429,6 +430,10 @@ export class Pod extends WorkloadKubeObject { return this.getProbe(container.readinessProbe); } + getStartupProbe(container: IPodContainer) { + return this.getProbe(container.startupProbe); + } + getProbe(probeData: IContainerProbe) { if (!probeData) return []; const { diff --git a/src/renderer/components/+workloads-pods/pod-details-container.tsx b/src/renderer/components/+workloads-pods/pod-details-container.tsx index b883835076..cd95e11b43 100644 --- a/src/renderer/components/+workloads-pods/pod-details-container.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-container.tsx @@ -57,6 +57,7 @@ export class PodDetailsContainer extends React.Component { const ready = status ? status.ready : ""; const liveness = pod.getLivenessProbe(container); const readiness = pod.getReadinessProbe(container); + const startup = pod.getStartupProbe(container); const isInitContainer = !!pod.getInitContainers().find(c => c.name == name); const metricTabs = [ CPU, @@ -140,6 +141,15 @@ export class PodDetailsContainer extends React.Component { } } + {startup.length > 0 && + Startup} labelsOnly> + { + startup.map((value, index) => ( + + )) + } + + } {command && Command}> {command.join(" ")}