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.
		
		
		
		
		
			
		
			
				
					
					
						
							77 lines
						
					
					
						
							2.2 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							77 lines
						
					
					
						
							2.2 KiB
						
					
					
				| #!/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
 |