blob: d5ba8574a640e7c8363c681ceaf7080e33ee29fd (
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
|
#!/bin/bash
# Test script for schema registry E2E testing
# This script sets up a mock schema registry and runs the E2E tests
set -e
echo "๐ Starting Schema Registry E2E Test"
# Check if we have a real schema registry URL
if [ -n "$SCHEMA_REGISTRY_URL" ]; then
echo "๐ก Using real Schema Registry: $SCHEMA_REGISTRY_URL"
else
echo "๐ง No SCHEMA_REGISTRY_URL set, using mock registry"
# For now, we'll skip the test if no real registry is available
# In the future, we could start a mock registry here
export SCHEMA_REGISTRY_URL="http://localhost:8081"
echo "โ ๏ธ Mock registry not implemented yet, test will be skipped"
fi
# Start SeaweedFS infrastructure
echo "๐ฑ Starting SeaweedFS infrastructure..."
cd /Users/chrislu/go/src/github.com/seaweedfs/seaweedfs
# Clean up any existing processes
pkill -f "weed server" || true
pkill -f "weed mq.broker" || true
sleep 2
# Start SeaweedFS server
echo "๐๏ธ Starting SeaweedFS server..."
/tmp/weed server -dir=/tmp/seaweedfs-test -master.port=9333 -volume.port=8080 -filer.port=8888 -ip=localhost > /tmp/seaweed-server.log 2>&1 &
SERVER_PID=$!
# Wait for server to be ready
sleep 5
# Start MQ broker
echo "๐จ Starting SeaweedMQ broker..."
/tmp/weed mq.broker -master=localhost:9333 -port=17777 > /tmp/seaweed-broker.log 2>&1 &
BROKER_PID=$!
# Wait for broker to be ready
sleep 3
# Check if services are running
if ! curl -s http://localhost:9333/cluster/status > /dev/null; then
echo "[FAIL] SeaweedFS server not ready"
exit 1
fi
echo "[OK] SeaweedFS infrastructure ready"
# Run the schema registry E2E tests
echo "๐งช Running Schema Registry E2E tests..."
cd /Users/chrislu/go/src/github.com/seaweedfs/seaweedfs/test/kafka
export SEAWEEDFS_MASTERS=127.0.0.1:9333
# Run the tests
if go test -v ./integration -run TestSchemaRegistryE2E -timeout 5m; then
echo "[OK] Schema Registry E2E tests PASSED!"
TEST_RESULT=0
else
echo "[FAIL] Schema Registry E2E tests FAILED!"
TEST_RESULT=1
fi
# Cleanup
echo "๐งน Cleaning up..."
kill $BROKER_PID $SERVER_PID 2>/dev/null || true
sleep 2
pkill -f "weed server" || true
pkill -f "weed mq.broker" || true
echo "๐ Schema Registry E2E Test completed"
exit $TEST_RESULT
|