diff --git a/scripts/refreshQueryCache.sh b/scripts/refreshQueryCache.sh index b4a6304..8489aa2 100755 --- a/scripts/refreshQueryCache.sh +++ b/scripts/refreshQueryCache.sh @@ -1,15 +1,16 @@ -#!/bin/bash +#!/bin/sh # jsinfo/scripts/refreshQueryCache.sh REST_URL="${REST_URL:-http://0.0.0.0:8080}" get() { - local url="$1" - local retries=5 - local response="" + url="$1" + retries=5 + response="" echo "revalidate_cache: calling get on $REST_URL$url" >&2 - for ((i=0; i<$retries; i++)); do + i=0 + while [ $i -lt $retries ]; do response=$(curl -s "$REST_URL$url") echo "$response" if echo "$response" | jq . > /dev/null 2>&1; then @@ -17,14 +18,15 @@ get() { echo "$response" >&2 return fi + i=$((i+1)) sleep 0.5 done } revalidate_cache_for_specs() { echo "revalidate_cache: Revalidating cache for specs..." - local response=$(get "/specs") - local specs=$(echo "$response" | jq -r '.specs[] | .id') + response=$(get "/specs") + specs=$(echo "$response" | jq -r '.specs[] | .id') for spec in $specs; do echo "revalidate_cache: calling $REST_URL/spec/$spec" curl -s "$REST_URL/spec/$spec" > /dev/null @@ -33,8 +35,8 @@ revalidate_cache_for_specs() { revalidate_cache_for_consumers() { echo "revalidate_cache: Revalidating cache for consumers..." - local response=$(get "/consumers") - local consumers=$(echo "$response" | jq -r '.consumers[] | .address') + response=$(get "/consumers") + consumers=$(echo "$response" | jq -r '.consumers[] | .address') for consumer in $consumers; do echo "revalidate_cache: calling $REST_URL/consumer/$consumer" curl -s "$REST_URL/consumer/$consumer" > /dev/null @@ -43,11 +45,13 @@ revalidate_cache_for_consumers() { revalidate_cache_for_providers() { echo "revalidate_cache: Revalidating cache for providers..." - local response=$(get "/providers") - local providers=$(echo "$response" | jq -r '.providers[] | .address') + response=$(get "/providers") + providers=$(echo "$response" | jq -r '.providers[] | .address') for provider in $providers; do - echo "revalidate_cache: calling $REST_URL/provider/$provider" - curl -s "$REST_URL/provider/$provider" > /dev/null + if [ "$provider" != "null" ]; then + echo "revalidate_cache: calling $REST_URL/provider/$provider" + curl -s "$REST_URL/provider/$provider" > /dev/null + fi done }