From c6505a6647ff890df9cb242de5e02c531ae6be35 Mon Sep 17 00:00:00 2001 From: Oscar Zhou <100548325+oscarzhou-portainer@users.noreply.github.com> Date: Fri, 12 Jan 2024 08:21:38 +1300 Subject: [PATCH] fix(docker/container): show exit code in status column if needs [EE-5760] (#10916) --- .../ContainersDatatable/columns/state.tsx | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/app/react/docker/containers/ListView/ContainersDatatable/columns/state.tsx b/app/react/docker/containers/ListView/ContainersDatatable/columns/state.tsx index c2de8dbd5..9d62fa453 100644 --- a/app/react/docker/containers/ListView/ContainersDatatable/columns/state.tsx +++ b/app/react/docker/containers/ListView/ContainersDatatable/columns/state.tsx @@ -24,6 +24,7 @@ export const state = columnHelper.accessor('Status', { function StatusCell({ getValue, + row: { original: container }, }: CellContext) { const status = getValue(); @@ -35,6 +36,13 @@ function StatusCell({ const statusClassName = getClassName(); + let transformedStatus: ContainerStatus | string = status; + if (transformedStatus === ContainerStatus.Exited) { + transformedStatus = `${transformedStatus} - code ${extractExitCode( + container.StatusText + )}`; + } + return ( - {status} + {transformedStatus} ); @@ -64,4 +72,10 @@ function StatusCell({ return 'success'; } } + + function extractExitCode(statusText: string) { + const regex = /\((\d+)\)/; + const match = statusText.match(regex); + return match ? match[1] : ''; + } }