From 8d9d00d0c6f65a11f7599ec9423f94b62211e8d4 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sat, 15 Mar 2025 20:43:22 -0600 Subject: [PATCH] refactor: streamline container parsing logic in Docker service functions --- packages/server/src/services/docker.ts | 160 ++++++++++++------------- 1 file changed, 76 insertions(+), 84 deletions(-) diff --git a/packages/server/src/services/docker.ts b/packages/server/src/services/docker.ts index 69ae446a..bb70d28f 100644 --- a/packages/server/src/services/docker.ts +++ b/packages/server/src/services/docker.ts @@ -136,26 +136,24 @@ export const getContainersByAppNameMatch = async ( result = stdout.trim().split("\n"); } - const containers = result - .map((line) => { - const parts = line.split(" | "); - const containerId = parts[0] - ? parts[0].replace("CONTAINER ID : ", "").trim() - : "No container id"; - const name = parts[1] - ? parts[1].replace("Name: ", "").trim() - : "No container name"; + const containers = result.map((line) => { + const parts = line.split(" | "); + const containerId = parts[0] + ? parts[0].replace("CONTAINER ID : ", "").trim() + : "No container id"; + const name = parts[1] + ? parts[1].replace("Name: ", "").trim() + : "No container name"; - const state = parts[2] - ? parts[2].replace("State: ", "").trim() - : "No state"; - return { - containerId, - name, - state, - }; - }) - .sort((a, b) => a.name.localeCompare(b.name)); + const state = parts[2] + ? parts[2].replace("State: ", "").trim() + : "No state"; + return { + containerId, + name, + state, + }; + }); return containers || []; } catch (_error) {} @@ -192,30 +190,28 @@ export const getStackContainersByAppName = async ( result = stdout.trim().split("\n"); } - const containers = result - .map((line) => { - const parts = line.split(" | "); - const containerId = parts[0] - ? parts[0].replace("CONTAINER ID : ", "").trim() - : "No container id"; - const name = parts[1] - ? parts[1].replace("Name: ", "").trim() - : "No container name"; + const containers = result.map((line) => { + const parts = line.split(" | "); + const containerId = parts[0] + ? parts[0].replace("CONTAINER ID : ", "").trim() + : "No container id"; + const name = parts[1] + ? parts[1].replace("Name: ", "").trim() + : "No container name"; - const state = parts[2] - ? parts[2].replace("State: ", "").trim().toLowerCase() - : "No state"; - const node = parts[3] - ? parts[3].replace("Node: ", "").trim() - : "No specific node"; - return { - containerId, - name, - state, - node, - }; - }) - .sort((a, b) => a.name.localeCompare(b.name)); + const state = parts[2] + ? parts[2].replace("State: ", "").trim().toLowerCase() + : "No state"; + const node = parts[3] + ? parts[3].replace("Node: ", "").trim() + : "No specific node"; + return { + containerId, + name, + state, + node, + }; + }); return containers || []; } catch (_error) {} @@ -253,31 +249,29 @@ export const getServiceContainersByAppName = async ( result = stdout.trim().split("\n"); } - const containers = result - .map((line) => { - const parts = line.split(" | "); - const containerId = parts[0] - ? parts[0].replace("CONTAINER ID : ", "").trim() - : "No container id"; - const name = parts[1] - ? parts[1].replace("Name: ", "").trim() - : "No container name"; + const containers = result.map((line) => { + const parts = line.split(" | "); + const containerId = parts[0] + ? parts[0].replace("CONTAINER ID : ", "").trim() + : "No container id"; + const name = parts[1] + ? parts[1].replace("Name: ", "").trim() + : "No container name"; - const state = parts[2] - ? parts[2].replace("State: ", "").trim().toLowerCase() - : "No state"; + const state = parts[2] + ? parts[2].replace("State: ", "").trim().toLowerCase() + : "No state"; - const node = parts[3] - ? parts[3].replace("Node: ", "").trim() - : "No specific node"; - return { - containerId, - name, - state, - node, - }; - }) - .sort((a, b) => a.name.localeCompare(b.name)); + const node = parts[3] + ? parts[3].replace("Node: ", "").trim() + : "No specific node"; + return { + containerId, + name, + state, + node, + }; + }); return containers || []; } catch (_error) {} @@ -318,25 +312,23 @@ export const getContainersByAppLabel = async ( const lines = stdout.trim().split("\n"); - const containers = lines - .map((line) => { - const parts = line.split(" | "); - const containerId = parts[0] - ? parts[0].replace("CONTAINER ID : ", "").trim() - : "No container id"; - const name = parts[1] - ? parts[1].replace("Name: ", "").trim() - : "No container name"; - const state = parts[2] - ? parts[2].replace("State: ", "").trim() - : "No state"; - return { - containerId, - name, - state, - }; - }) - .sort((a, b) => a.name.localeCompare(b.name)); + const containers = lines.map((line) => { + const parts = line.split(" | "); + const containerId = parts[0] + ? parts[0].replace("CONTAINER ID : ", "").trim() + : "No container id"; + const name = parts[1] + ? parts[1].replace("Name: ", "").trim() + : "No container name"; + const state = parts[2] + ? parts[2].replace("State: ", "").trim() + : "No state"; + return { + containerId, + name, + state, + }; + }); return containers || []; } catch (_error) {}