From eb672ca353d35c424f7b3545a84d755f887a74e1 Mon Sep 17 00:00:00 2001 From: Gyurix Date: Tue, 1 Oct 2024 11:35:25 +0200 Subject: [PATCH] omit container name duplicates --- scripts/scheduler/entrypoint.sh | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/scripts/scheduler/entrypoint.sh b/scripts/scheduler/entrypoint.sh index 75e80ba..9a439c6 100644 --- a/scripts/scheduler/entrypoint.sh +++ b/scripts/scheduler/entrypoint.sh @@ -527,13 +527,23 @@ execute_task() { SERVICE_NAME=$(cat $SERVICE | jq -r .main.SERVICE_NAME); if [ "$SERVICE_NAME" != "firewalls" ]; then CONTAINER_NAMES=$(cat $SERVICE | jq -r .containers[].NAME); - CONTAINERS=""; - for CONTAINER_NAME in $CONTAINER_NAMES; do + + CON_IDS=""; + for CONTAINER_NAME in $CONTAINER_NAMES; do + CON_ID=$(docker ps -a --format '{{.ID}} {{.Names}}' | grep -E " $CONTAINER_NAME(-|$)" | awk '{print $1}'); + CON_IDS=$CON_IDS" "$CON_ID; + + done; + CON_IDS=$(echo "$CON_IDS" | tr ' ' '\n' | sort -u | tr '\n' ' '); + + CONTAINERS=""; + for CON_ID in $CON_IDS; do if [ "$CONTAINERS" != "" ]; then CONTAINERS=$CONTAINERS"|"; fi; - CONTAINERS="$CONTAINERS"$(docker ps --format '{{.Names}}:{{.Status}}' | grep -v framework-scheduler | grep "$CONTAINER_NAME"); - done; + CONTAINERS="$CONTAINERS"$(docker ps -a --format "{{.Names}}:{{.Status}}" --filter "id=$CON_ID"); + done; + #RESULT=$(echo "$CONTAINERS" | base64 -w0); SERVICES=$SERVICES$SEP'"'$SERVICE_NAME'": {"content": "'$CONTENT'", "running": "'$CONTAINERS'"}'; fi;