1
0
Fork 0
mirror of https://github.com/chrislusf/seaweedfs synced 2025-09-19 01:30:23 +02:00
seaweedfs/test/kafka/scripts/kafka-gateway-start.sh
2025-09-17 09:33:02 -07:00

52 lines
1.3 KiB
Bash
Executable file

#!/bin/sh
# Kafka Gateway Startup Script for Integration Testing
set -e
echo "Starting Kafka Gateway..."
SEAWEEDFS_MASTERS=${SEAWEEDFS_MASTERS:-seaweedfs-master:9333}
SEAWEEDFS_FILER=${SEAWEEDFS_FILER:-seaweedfs-filer:8888}
SEAWEEDFS_MQ_BROKER=${SEAWEEDFS_MQ_BROKER:-seaweedfs-mq-broker:17777}
SEAWEEDFS_FILER_GROUP=${SEAWEEDFS_FILER_GROUP:-}
# Wait for dependencies
echo "Waiting for SeaweedFS master(s)..."
OLD_IFS="$IFS"
IFS=','
for MASTER in $SEAWEEDFS_MASTERS; do
MASTER_HOST=${MASTER%:*}
MASTER_PORT=${MASTER#*:}
while ! nc -z "$MASTER_HOST" "$MASTER_PORT"; do
sleep 1
done
echo "SeaweedFS master $MASTER is ready"
done
IFS="$OLD_IFS"
echo "Waiting for SeaweedFS Filer..."
while ! nc -z "${SEAWEEDFS_FILER%:*}" "${SEAWEEDFS_FILER#*:}"; do
sleep 1
done
echo "SeaweedFS Filer is ready"
echo "Waiting for SeaweedFS MQ Broker..."
while ! nc -z "${SEAWEEDFS_MQ_BROKER%:*}" "${SEAWEEDFS_MQ_BROKER#*:}"; do
sleep 1
done
echo "SeaweedFS MQ Broker is ready"
echo "Waiting for Schema Registry..."
while ! curl -f "${SCHEMA_REGISTRY_URL}/subjects" > /dev/null 2>&1; do
sleep 1
done
echo "Schema Registry is ready"
# Start Kafka Gateway
echo "Starting Kafka Gateway on port ${KAFKA_PORT:-9093}..."
exec /usr/bin/weed mq.kafka.gateway \
-master=${SEAWEEDFS_MASTERS} \
-filerGroup=${SEAWEEDFS_FILER_GROUP} \
-port=${KAFKA_PORT:-9093} \
-ip=0.0.0.0