From 94d04656f3cfb310101f5e8aa8b36f3b5f896431 Mon Sep 17 00:00:00 2001 From: Simon Baumer Date: Mon, 5 Feb 2024 15:06:59 +0100 Subject: [PATCH] Add long running central port-forward script --- bin/central-port | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 bin/central-port diff --git a/bin/central-port b/bin/central-port new file mode 100644 index 0000000..61bb560 --- /dev/null +++ b/bin/central-port @@ -0,0 +1,41 @@ +#!/bin/bash + +# Function to start port forwarding +start_port_forward() { + kubectl -n stackrox port-forward svc/central 8000:443 & + # Capture the process ID of the background process + PORT_FORWARD_PID=$! + wait $PORT_FORWARD_PID +} + +# Function to check the connection +check_connection() { + while true; do + # Use curl to ping the endpoint + if curl -sSf http://localhost:8000 > /dev/null; then + echo "Connection is active." + else + echo "Connection lost. Restarting port forward..." + # If the connection is lost, kill the port forward process + kill $PORT_FORWARD_PID + break + fi + sleep 1 + done +} + +# Main loop +while true; do + echo "Starting port forward..." + start_port_forward + + # Start the connection check in the background + check_connection & + + # Wait for the port forward process to exit + wait $PORT_FORWARD_PID + + # If the process exits, wait for a few seconds and restart + echo "Port forward process exited. Restarting in 5 seconds..." + sleep 5 +done