1+ .PHONY : help install test lint format clean run run-monolithic build docker-build docker-run
2+
3+ # Help command
4+ help :
5+ @echo " BINGO Application Makefile Commands"
6+ @echo " "
7+ @echo " Usage:"
8+ @echo " make install - Install dependencies"
9+ @echo " make run - Run the modular application"
10+ @echo " make run-monolithic - Run the original monolithic application"
11+ @echo " make test - Run tests"
12+ @echo " make lint - Run linters"
13+ @echo " make format - Format code"
14+ @echo " make clean - Clean build artifacts and cache"
15+ @echo " make build - Build the package"
16+ @echo " make docker-build - Build Docker image"
17+ @echo " make docker-run - Run Docker container"
18+
19+ # Install dependencies
20+ install :
21+ poetry install
22+
23+ # Run application (modular version)
24+ run :
25+ poetry run python app.py
26+
27+ # Run original monolithic application
28+ run-monolithic :
29+ poetry run python main.py
30+
31+ # Run tests
32+ test :
33+ poetry run pytest --cov=src
34+
35+ # Run lints
36+ lint :
37+ poetry run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
38+ poetry run flake8 . --count --exit-zero --max-complexity=10 --max-line-length=88 --statistics
39+ poetry run black --check .
40+ poetry run isort --check .
41+
42+ # Format code
43+ format :
44+ poetry run black .
45+ poetry run isort .
46+
47+ # Clean build artifacts and cache
48+ clean :
49+ rm -rf dist
50+ rm -rf .pytest_cache
51+ rm -rf .coverage
52+ find . -type d -name " __pycache__" -exec rm -rf {} +
53+
54+ # Build package
55+ build :
56+ poetry build
57+
58+ # Docker commands
59+ docker-build :
60+ docker build -t bingo .
61+
62+ docker-run :
63+ docker run -p 8080:8080 bingo
0 commit comments