From 8fd2e0b5fc05a80ac18c6a1cc02bce75a44d8c91 Mon Sep 17 00:00:00 2001 From: Ondrej Brablc Date: Sun, 2 Jun 2024 17:13:54 +0200 Subject: [PATCH] Simplify checking conditions --- services.sh | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/services.sh b/services.sh index 52dbc50..7037ea7 100755 --- a/services.sh +++ b/services.sh @@ -25,17 +25,9 @@ while read service; do network_alias=$(get_service $service | jq -r '.Spec.TaskTemplate.Networks[].Aliases[]' | sort | head -1) echo $ports | sed 's/,/\n/g' | while read port; do - read service_id replicas < <(get_service $service | jq -r '"\(.ID) \(.Spec.Mode.Replicated.Replicas)"') - test "$replicas" != "0" || continue - - if [[ $replicas == "null" ]]; then - filter=$(echo '{"service":["'$service_id'"], "desired-state":["running"]}' | jq -s -R -r @uri) - read state message exit_code < <(curl -s --unix-socket $sock "$url/tasks?filters=$filter" | jq -r '.[] | "\(.Status.State) \(.Status.Message) \(.ContainerStatus.ExitCode)"' | grep running | head -1) - - test "$state" == "running" || break + read service_id mode replicas < <(get_service $service | jq -r '"\(.ID) \(.Spec.Mode | keys[0]) \(.Spec.Mode.Replicated.Replicas)"') + if [[ $mode == "Global" || ( $mode == "Replicated" && "$replicas" != "0" ) ]]; then + echo "$service $network_alias $port" fi - - echo "$service $network_alias $port" - done done < <(get_services)