mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-12-06 02:59:29 +00:00
Improved makefile
This commit is contained in:
parent
c7102bcd8c
commit
46d8c86e0c
1 changed files with 30 additions and 38 deletions
68
Makefile
68
Makefile
|
|
@ -1,66 +1,54 @@
|
||||||
# PartDB Makefile for Test Environment Management
|
# PartDB Makefile for Test Environment Management
|
||||||
|
|
||||||
.PHONY: help test-setup test-clean test-db-create test-db-migrate test-cache-clear test-fixtures test-run dev-setup dev-clean dev-db-create dev-db-migrate dev-cache-clear dev-warmup dev-reset
|
.PHONY: help deps-install lint format format-check test coverage pre-commit all test-typecheck \
|
||||||
|
test-setup test-clean test-db-create test-db-migrate test-cache-clear test-fixtures test-run test-reset \
|
||||||
|
section-dev dev-setup dev-clean dev-db-create dev-db-migrate dev-cache-clear dev-warmup dev-reset
|
||||||
|
|
||||||
# Default target
|
# Default target
|
||||||
help:
|
help: ## Show this help
|
||||||
@echo "PartDB Test Environment Management"
|
@awk 'BEGIN {FS = ":.*##"}; /^[a-zA-Z0-9][a-zA-Z0-9_-]+:.*##/ {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
|
||||||
@echo "=================================="
|
|
||||||
@echo ""
|
# Dependencies
|
||||||
@echo "Available targets:"
|
deps-install: ## Install PHP dependencies with unlimited memory
|
||||||
@echo " test-setup - Complete test environment setup (clean, create DB, migrate, load fixtures)"
|
@echo "📦 Installing PHP dependencies..."
|
||||||
@echo " test-clean - Clean test cache and database files"
|
COMPOSER_MEMORY_LIMIT=-1 composer install
|
||||||
@echo " test-db-create - Create test database (if not exists)"
|
yarn install
|
||||||
@echo " test-db-migrate - Run database migrations for test environment"
|
@echo "✅ Dependencies installed"
|
||||||
@echo " test-cache-clear- Clear test cache"
|
|
||||||
@echo " test-fixtures - Load test fixtures"
|
|
||||||
@echo " test-run - Run PHPUnit tests"
|
|
||||||
@echo ""
|
|
||||||
@echo "Development Environment:"
|
|
||||||
@echo " dev-setup - Complete development environment setup (clean, create DB, migrate, warmup)"
|
|
||||||
@echo " dev-clean - Clean development cache and database files"
|
|
||||||
@echo " dev-db-create - Create development database (if not exists)"
|
|
||||||
@echo " dev-db-migrate - Run database migrations for development environment"
|
|
||||||
@echo " dev-cache-clear - Clear development cache"
|
|
||||||
@echo " dev-warmup - Warm up development cache"
|
|
||||||
@echo " dev-reset - Quick development reset (clean + migrate)"
|
|
||||||
@echo ""
|
|
||||||
@echo " help - Show this help message"
|
|
||||||
|
|
||||||
# Complete test environment setup
|
# Complete test environment setup
|
||||||
test-setup: test-clean test-db-create test-db-migrate test-fixtures
|
test-setup: test-clean test-db-create test-db-migrate test-fixtures ## Complete test setup (clean, create DB, migrate, fixtures)
|
||||||
@echo "✅ Test environment setup complete!"
|
@echo "✅ Test environment setup complete!"
|
||||||
|
|
||||||
# Clean test environment
|
# Clean test environment
|
||||||
test-clean:
|
test-clean: ## Clean test cache and database files
|
||||||
@echo "🧹 Cleaning test environment..."
|
@echo "🧹 Cleaning test environment..."
|
||||||
rm -rf var/cache/test
|
rm -rf var/cache/test
|
||||||
rm -f var/app_test.db
|
rm -f var/app_test.db
|
||||||
@echo "✅ Test environment cleaned"
|
@echo "✅ Test environment cleaned"
|
||||||
|
|
||||||
# Create test database
|
# Create test database
|
||||||
test-db-create:
|
test-db-create: ## Create test database (if not exists)
|
||||||
@echo "🗄️ Creating test database..."
|
@echo "🗄️ Creating test database..."
|
||||||
-php bin/console doctrine:database:create --if-not-exists --env test || echo "⚠️ Database creation failed (expected for SQLite) - continuing..."
|
-php bin/console doctrine:database:create --if-not-exists --env test || echo "⚠️ Database creation failed (expected for SQLite) - continuing..."
|
||||||
|
|
||||||
# Run database migrations for test environment
|
# Run database migrations for test environment
|
||||||
test-db-migrate:
|
test-db-migrate: ## Run database migrations for test environment
|
||||||
@echo "🔄 Running database migrations..."
|
@echo "🔄 Running database migrations..."
|
||||||
COMPOSER_MEMORY_LIMIT=-1 php bin/console doctrine:migrations:migrate -n --env test
|
COMPOSER_MEMORY_LIMIT=-1 php bin/console doctrine:migrations:migrate -n --env test
|
||||||
|
|
||||||
# Clear test cache
|
# Clear test cache
|
||||||
test-cache-clear:
|
test-cache-clear: ## Clear test cache
|
||||||
@echo "🗑️ Clearing test cache..."
|
@echo "🗑️ Clearing test cache..."
|
||||||
rm -rf var/cache/test
|
rm -rf var/cache/test
|
||||||
@echo "✅ Test cache cleared"
|
@echo "✅ Test cache cleared"
|
||||||
|
|
||||||
# Load test fixtures
|
# Load test fixtures
|
||||||
test-fixtures:
|
test-fixtures: ## Load test fixtures
|
||||||
@echo "📦 Loading test fixtures..."
|
@echo "📦 Loading test fixtures..."
|
||||||
php bin/console partdb:fixtures:load -n --env test
|
php bin/console partdb:fixtures:load -n --env test
|
||||||
|
|
||||||
# Run PHPUnit tests
|
# Run PHPUnit tests
|
||||||
test-run:
|
test-run: ## Run PHPUnit tests
|
||||||
@echo "🧪 Running tests..."
|
@echo "🧪 Running tests..."
|
||||||
php bin/phpunit
|
php bin/phpunit
|
||||||
|
|
||||||
|
|
@ -68,32 +56,36 @@ test-run:
|
||||||
test-reset: test-cache-clear test-db-migrate test-fixtures
|
test-reset: test-cache-clear test-db-migrate test-fixtures
|
||||||
@echo "✅ Test environment reset complete!"
|
@echo "✅ Test environment reset complete!"
|
||||||
|
|
||||||
|
test-typecheck: ## Run static analysis (PHPStan)
|
||||||
|
@echo "🧪 Running type checks..."
|
||||||
|
COMPOSER_MEMORY_LIMIT=-1 composer phpstan
|
||||||
|
|
||||||
# Development helpers
|
# Development helpers
|
||||||
dev-setup: dev-clean dev-db-create dev-db-migrate dev-warmup
|
dev-setup: dev-clean dev-db-create dev-db-migrate dev-warmup ## Complete development setup (clean, create DB, migrate, warmup)
|
||||||
@echo "✅ Development environment setup complete!"
|
@echo "✅ Development environment setup complete!"
|
||||||
|
|
||||||
dev-clean:
|
dev-clean: ## Clean development cache and database files
|
||||||
@echo "🧹 Cleaning development environment..."
|
@echo "🧹 Cleaning development environment..."
|
||||||
rm -rf var/cache/dev
|
rm -rf var/cache/dev
|
||||||
rm -f var/app_dev.db
|
rm -f var/app_dev.db
|
||||||
@echo "✅ Development environment cleaned"
|
@echo "✅ Development environment cleaned"
|
||||||
|
|
||||||
dev-db-create:
|
dev-db-create: ## Create development database (if not exists)
|
||||||
@echo "🗄️ Creating development database..."
|
@echo "🗄️ Creating development database..."
|
||||||
-php bin/console doctrine:database:create --if-not-exists --env dev || echo "⚠️ Database creation failed (expected for SQLite) - continuing..."
|
-php bin/console doctrine:database:create --if-not-exists --env dev || echo "⚠️ Database creation failed (expected for SQLite) - continuing..."
|
||||||
|
|
||||||
dev-db-migrate:
|
dev-db-migrate: ## Run database migrations for development environment
|
||||||
@echo "🔄 Running database migrations..."
|
@echo "🔄 Running database migrations..."
|
||||||
COMPOSER_MEMORY_LIMIT=-1 php bin/console doctrine:migrations:migrate -n --env dev
|
COMPOSER_MEMORY_LIMIT=-1 php bin/console doctrine:migrations:migrate -n --env dev
|
||||||
|
|
||||||
dev-cache-clear:
|
dev-cache-clear: ## Clear development cache
|
||||||
@echo "🗑️ Clearing development cache..."
|
@echo "🗑️ Clearing development cache..."
|
||||||
rm -rf var/cache/dev
|
rm -rf var/cache/dev
|
||||||
@echo "✅ Development cache cleared"
|
@echo "✅ Development cache cleared"
|
||||||
|
|
||||||
dev-warmup:
|
dev-warmup: ## Warm up development cache
|
||||||
@echo "🔥 Warming up development cache..."
|
@echo "🔥 Warming up development cache..."
|
||||||
COMPOSER_MEMORY_LIMIT=-1 php -d memory_limit=1G bin/console cache:warmup --env dev -n
|
COMPOSER_MEMORY_LIMIT=-1 php -d memory_limit=1G bin/console cache:warmup --env dev -n
|
||||||
|
|
||||||
dev-reset: dev-cache-clear dev-db-migrate
|
dev-reset: dev-cache-clear dev-db-migrate ## Quick development reset (cache clear + migrate)
|
||||||
@echo "✅ Development environment reset complete!"
|
@echo "✅ Development environment reset complete!"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue