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.
 
 
 
 
 
 

80 lines
2.2 KiB

# SeaweedFS PostgreSQL Test Suite Makefile
.PHONY: help start stop clean produce test psql logs status all dev
# Default target
help: ## Show this help message
@echo "SeaweedFS PostgreSQL Test Suite"
@echo "==============================="
@echo "Available targets:"
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf " %-12s %s\n", $$1, $$2}' $(MAKEFILE_LIST)
@echo ""
@echo "Quick start: make all"
start: ## Start SeaweedFS and PostgreSQL servers
@./run-tests.sh start
stop: ## Stop all services
@./run-tests.sh stop
clean: ## Stop services and remove all data
@./run-tests.sh clean
produce: ## Create MQ test data
@./run-tests.sh produce
test: ## Run PostgreSQL client tests
@./run-tests.sh test
psql: ## Connect with interactive psql client
@./run-tests.sh psql
logs: ## Show service logs
@./run-tests.sh logs
status: ## Show service status
@./run-tests.sh status
all: ## Run complete test suite (start -> produce -> test)
@./run-tests.sh all
# Development targets
dev-start: ## Start services for development
@echo "Starting development environment..."
@docker-compose up -d seaweedfs postgres-server
@echo "Services started. Run 'make dev-logs' to watch logs."
dev-logs: ## Follow logs for development
@docker-compose logs -f seaweedfs postgres-server
dev-rebuild: ## Rebuild and restart services
@docker-compose down
@docker-compose up -d --build seaweedfs postgres-server
# Individual service targets
start-seaweedfs: ## Start only SeaweedFS
@docker-compose up -d seaweedfs
restart-postgres: ## Start only PostgreSQL server
@docker-compose down -d postgres-server
@docker-compose up -d --build seaweedfs postgres-server
# Testing targets
test-basic: ## Run basic connectivity test
@docker run --rm --network postgres_seaweedfs-net postgres:15-alpine \
psql -h postgres-server -p 5432 -U seaweedfs -d default -c "SELECT version();"
test-producer: ## Test data producer only
@docker-compose up --build mq-producer
test-client: ## Test client only
@docker-compose up --build postgres-client
# Cleanup targets
clean-images: ## Remove Docker images
@docker-compose down
@docker image prune -f
clean-all: ## Complete cleanup including images
@docker-compose down -v --rmi all
@docker system prune -f