From 7a1893f8641d2212c41d85f655908358f1daaec8 Mon Sep 17 00:00:00 2001 From: Prabhat Khera <91852476+prabhat-org@users.noreply.github.com> Date: Mon, 8 Jan 2024 08:26:20 +1300 Subject: [PATCH] fix showing env var values (#10908) --- .../ApplicationEnvVarsTable.tsx | 84 ++++++++++++------- 1 file changed, 52 insertions(+), 32 deletions(-) diff --git a/app/react/kubernetes/applications/DetailsView/ApplicationDetailsWidget/ApplicationEnvVarsTable.tsx b/app/react/kubernetes/applications/DetailsView/ApplicationDetailsWidget/ApplicationEnvVarsTable.tsx index 19ff4967f..65f306ae3 100644 --- a/app/react/kubernetes/applications/DetailsView/ApplicationDetailsWidget/ApplicationEnvVarsTable.tsx +++ b/app/react/kubernetes/applications/DetailsView/ApplicationDetailsWidget/ApplicationEnvVarsTable.tsx @@ -73,14 +73,15 @@ export function ApplicationEnvVarsTable({ namespace, app }: Props) { ) )} - {envVar.key ? ( - - - {envVar.key} - - ) : ( - '-' - )} + {envVar.type !== 'env' && + (envVar.key ? ( + + + {envVar.key} + + ) : ( + '-' + ))} {!envVar.resourseName && -} @@ -116,13 +117,14 @@ export function ApplicationEnvVarsTable({ namespace, app }: Props) { ); } +type EnvVarType = 'env' | 'configMap' | 'secret'; interface ContainerEnvVar { key?: string; value?: string; fieldPath?: string; containerName: string; isInitContainer: boolean; - type: 'configMap' | 'secret'; + type: EnvVarType; resourseName: string; } @@ -143,17 +145,26 @@ function getApplicationEnvironmentVariables( const appContainersEnvVars = appContainers?.flatMap((container) => { const containerEnvVars: ContainerEnvVar[] = - container?.env?.map((envVar) => ({ - key: envVar?.name, - fieldPath: envVar?.valueFrom?.fieldRef?.fieldPath, - containerName: container.name, - isInitContainer: false, - type: envVar?.valueFrom?.configMapKeyRef ? 'configMap' : 'secret', - resourseName: - envVar?.valueFrom?.configMapKeyRef?.name || - envVar?.valueFrom?.secretKeyRef?.name || - '', - })) || []; + container?.env?.map((envVar) => { + let envtype: EnvVarType = 'env'; + if (envVar?.valueFrom?.configMapKeyRef) { + envtype = 'configMap'; + } else if (envVar?.valueFrom?.secretKeyRef) { + envtype = 'secret'; + } + return { + key: envVar?.name, + fieldPath: envVar?.valueFrom?.fieldRef?.fieldPath, + containerName: container.name, + isInitContainer: false, + type: envtype, + resourseName: + envVar?.valueFrom?.configMapKeyRef?.name || + envVar?.valueFrom?.secretKeyRef?.name || + '', + value: envVar?.value, + }; + }) || []; const containerEnvFroms: ContainerEnvVar[] = container?.envFrom?.map((envFrom) => ({ @@ -171,17 +182,26 @@ function getApplicationEnvironmentVariables( const appInitContainersEnvVars = appInitContainers?.flatMap((container) => { const containerEnvVars: ContainerEnvVar[] = - container?.env?.map((envVar) => ({ - key: envVar?.name, - fieldPath: envVar?.valueFrom?.fieldRef?.fieldPath, - containerName: container.name, - isInitContainer: false, - type: envVar?.valueFrom?.configMapKeyRef ? 'configMap' : 'secret', - resourseName: - envVar?.valueFrom?.configMapKeyRef?.name || - envVar?.valueFrom?.secretKeyRef?.name || - '', - })) || []; + container?.env?.map((envVar) => { + let envtype: EnvVarType = 'env'; + if (envVar?.valueFrom?.configMapKeyRef) { + envtype = 'configMap'; + } else if (envVar?.valueFrom?.secretKeyRef) { + envtype = 'secret'; + } + return { + key: envVar?.name, + fieldPath: envVar?.valueFrom?.fieldRef?.fieldPath, + containerName: container.name, + isInitContainer: true, + type: envtype, + resourseName: + envVar?.valueFrom?.configMapKeyRef?.name || + envVar?.valueFrom?.secretKeyRef?.name || + '', + value: envVar?.value, + }; + }) || []; const containerEnvFroms: ContainerEnvVar[] = container?.envFrom?.map((envFrom) => ({ @@ -189,7 +209,7 @@ function getApplicationEnvironmentVariables( resourseName: envFrom?.configMapRef?.name || envFrom?.secretRef?.name || '', containerName: container.name, - isInitContainer: false, + isInitContainer: true, type: envFrom?.configMapRef ? 'configMap' : 'secret', })) || [];