You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
proxysql/test/infra/control/stop-proxysql-isolated.bash

39 lines
1.2 KiB

#!/bin/bash
set -e
set -o pipefail
# Derive Workspace relative to script
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
REPO_ROOT="$(cd "${SCRIPT_DIR}/../../.." && pwd)"
export WORKSPACE="${REPO_ROOT}"
# Default INFRA_ID if not provided
export INFRA_ID="${INFRA_ID:-dev-$USER}"
PROXY_CONTAINER="proxysql.${INFRA_ID}"
NETWORK_NAME="${INFRA_ID}_backend"
echo ">>> Stopping ProxySQL Infrastructure for ${INFRA_ID}"
docker ps -a --format '{{.Names}}' | grep "${INFRA_ID}" | grep -v "test-runner" | xargs -r docker rm -f >/dev/null 2>&1 || true
if [ -f /.dockerenv ]; then
RUNNER_ID=$(hostname)
echo ">>> Disconnecting Runner container from network"
docker network disconnect -f "${NETWORK_NAME}" "${RUNNER_ID}" >/dev/null 2>&1 || true
fi
echo ">>> Removing Network: ${NETWORK_NAME}"
for i in {1..5}; do
if docker network rm "${NETWORK_NAME}" >/dev/null 2>&1; then
echo ">>> Network ${NETWORK_NAME} removed."
break
fi
sleep 1
done
echo ">>> Log permissions cleanup"
INFRA_LOGS_PATH="${WORKSPACE}/ci_infra_logs"
if [ -d "${INFRA_LOGS_PATH}/${INFRA_ID}" ]; then
sudo chmod -R 777 "${INFRA_LOGS_PATH}/${INFRA_ID}" 2>/dev/null || true
fi