blob: 410376d3b17193056383e9ec42cbe3ddf2c32386 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
#!/bin/bash
# Script to test SeaweedFS MQ broker startup locally
# This helps debug broker startup issues before running CI
set -e
echo "=== Testing SeaweedFS MQ Broker Startup ==="
# Build weed binary
echo "Building weed binary..."
cd "$(dirname "$0")/../../.."
go build -o /tmp/weed ./weed
# Setup data directory
WEED_DATA_DIR="/tmp/seaweedfs-broker-test-$$"
mkdir -p "$WEED_DATA_DIR"
echo "Using data directory: $WEED_DATA_DIR"
# Cleanup function
cleanup() {
echo "Cleaning up..."
pkill -f "weed.*server" || true
pkill -f "weed.*mq.broker" || true
sleep 2
rm -rf "$WEED_DATA_DIR"
rm -f /tmp/weed-*.log
}
trap cleanup EXIT
# Start SeaweedFS server
echo "Starting SeaweedFS server..."
/tmp/weed -v 1 server \
-ip="127.0.0.1" \
-ip.bind="0.0.0.0" \
-dir="$WEED_DATA_DIR" \
-master.raftHashicorp \
-master.port=9333 \
-volume.port=8081 \
-filer.port=8888 \
-filer=true \
-metricsPort=9325 \
> /tmp/weed-server-test.log 2>&1 &
SERVER_PID=$!
echo "Server PID: $SERVER_PID"
# Wait for master
echo "Waiting for master..."
for i in $(seq 1 30); do
if curl -s http://127.0.0.1:9333/cluster/status >/dev/null; then
echo "✓ Master is up"
break
fi
echo " Waiting for master... ($i/30)"
sleep 1
done
# Wait for filer
echo "Waiting for filer..."
for i in $(seq 1 30); do
if nc -z 127.0.0.1 8888; then
echo "✓ Filer is up"
break
fi
echo " Waiting for filer... ($i/30)"
sleep 1
done
# Start MQ broker
echo "Starting MQ broker..."
/tmp/weed -v 2 mq.broker \
-master="127.0.0.1:9333" \
-ip="127.0.0.1" \
-port=17777 \
> /tmp/weed-mq-broker-test.log 2>&1 &
BROKER_PID=$!
echo "Broker PID: $BROKER_PID"
# Wait for broker
echo "Waiting for broker..."
broker_ready=false
for i in $(seq 1 30); do
if nc -z 127.0.0.1 17777; then
echo "✓ MQ broker is up"
broker_ready=true
break
fi
echo " Waiting for MQ broker... ($i/30)"
sleep 1
done
if [ "$broker_ready" = false ]; then
echo "❌ MQ broker failed to start"
echo
echo "=== Server logs ==="
cat /tmp/weed-server-test.log
echo
echo "=== Broker logs ==="
cat /tmp/weed-mq-broker-test.log
exit 1
fi
# Broker started successfully - discovery will be tested by Kafka gateway
echo "✓ Broker started successfully and accepting connections"
echo
echo "[OK] All tests passed!"
echo "Server logs: /tmp/weed-server-test.log"
echo "Broker logs: /tmp/weed-mq-broker-test.log"
|