aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh
diff options
context:
space:
mode:
authorAndreas Geissler <andreas-geissler@telekom.de>2024-04-24 15:38:24 +0200
committerAndreas Geissler <andreas-geissler@telekom.de>2024-06-05 13:49:50 +0200
commite9f67624d1f5e25d24c951e385661341baa21830 (patch)
tree5c76da9347276454bee590369905b5b35b0489dc /kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh
parent53fe20dc15c0e23c27bee5c1450340e454b8945b (diff)
[AUTHENTICATION] Restructured keycloak and Oauth2-proxy
Changed keycloak-init to "authentication" and moved as root chart Moved oauth2-proxy to onap-authentication and updated to version 7.5.4 Use TCL proposal for REALM creation. Update keycloak-config-cli version to 5.12.0. Ingress AuthorizationPolicy creation for all defined accessRoles in the configured realms Issue-ID: OOM-3292 Issue-ID: OOM-3268 Change-Id: I0901cd416ca5da871931d7cf084cd35c55f804f1 Signed-off-by: Andreas Geissler <andreas-geissler@telekom.de>
Diffstat (limited to 'kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh')
-rw-r--r--kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh52
1 files changed, 52 insertions, 0 deletions
diff --git a/kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh b/kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh
new file mode 100644
index 0000000000..24e628f426
--- /dev/null
+++ b/kubernetes/authentication/components/oauth2-proxy/scripts/check-redis.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+RETRY_INTERVAL=5 # Interval between retries in seconds
+elapsed=0 # Elapsed time
+
+check_redis() {
+ host=$1
+ port=$2
+ while [ $elapsed -lt $TOTAL_RETRY_TIME ]; do
+ echo "Checking Redis at $host:$port... Elapsed time: ${elapsed}s"
+ if nc -z -w1 $TIMEOUT $host $port > /dev/null 2>&1; then
+ echo "Redis is up at $host:$port!"
+ return 0
+ else
+ echo "Redis is down at $host:$port. Retrying in $RETRY_INTERVAL seconds."
+ sleep $RETRY_INTERVAL
+ elapsed=$((elapsed + RETRY_INTERVAL))
+ fi
+ done
+ echo "Failed to connect to Redis at $host:$port after $TOTAL_RETRY_TIME seconds."
+ return 1
+}
+
+# For parsing and checking connections
+parse_and_check() {
+ url=$1
+ clean_url=${url#redis://}
+ host=$(echo $clean_url | cut -d':' -f1)
+ port=$(echo $clean_url | cut -d':' -f2)
+ check_redis $host $port
+}
+
+# Main
+if [ -n "$OAUTH2_PROXY_REDIS_CLUSTER_CONNECTION_URLS" ]; then
+ echo "Checking Redis in cluster mode..."
+ echo "$OAUTH2_PROXY_REDIS_CLUSTER_CONNECTION_URLS" | tr ',' '\n' | while read -r addr; do
+ parse_and_check $addr || exit 1
+ done
+elif [ -n "$OAUTH2_PROXY_REDIS_SENTINEL_CONNECTION_URLS" ]; then
+ echo "Checking Redis in sentinel mode..."
+ echo "$OAUTH2_PROXY_REDIS_SENTINEL_CONNECTION_URLS" | tr ',' '\n' | while read -r addr; do
+ parse_and_check $addr || exit 1
+ done
+elif [ -n "$OAUTH2_PROXY_REDIS_CONNECTION_URL" ]; then
+ echo "Checking standalone Redis..."
+ parse_and_check "$OAUTH2_PROXY_REDIS_CONNECTION_URL" || exit 1
+else
+ echo "Redis configuration not specified."
+ exit 1
+fi
+
+echo "Redis check completed."