makefile
This commit is contained in:
44
Makefile
Normal file
44
Makefile
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
.DEFAULT_GOAL := check
|
||||||
|
|
||||||
|
# Run the full local check suite — same order as CI would.
|
||||||
|
check: fmt-check clippy test
|
||||||
|
@echo "✅ All checks passed"
|
||||||
|
|
||||||
|
# Apply rustfmt to all files.
|
||||||
|
fmt:
|
||||||
|
cargo fmt
|
||||||
|
|
||||||
|
# Check formatting without modifying files (CI-safe).
|
||||||
|
fmt-check:
|
||||||
|
cargo fmt --check
|
||||||
|
|
||||||
|
# Run Clippy and treat warnings as errors.
|
||||||
|
clippy:
|
||||||
|
cargo clippy -- -D warnings
|
||||||
|
|
||||||
|
# Run the test suite.
|
||||||
|
test:
|
||||||
|
cargo test
|
||||||
|
|
||||||
|
# Apply fmt + clippy auto-fixes in one shot.
|
||||||
|
fix:
|
||||||
|
cargo fmt
|
||||||
|
cargo clippy --fix --allow-dirty --allow-staged
|
||||||
|
|
||||||
|
# Build the frontend SPA.
|
||||||
|
build-app:
|
||||||
|
cd app && npm run build
|
||||||
|
|
||||||
|
# Run the backend (builds frontend first if needed).
|
||||||
|
dev: build-app
|
||||||
|
JWT_SECRET=dev-secret ALLOW_REGISTRATION=true cargo run -p presentation
|
||||||
|
|
||||||
|
# Run backend only (skip frontend build, assumes build-app was run).
|
||||||
|
dev-api:
|
||||||
|
JWT_SECRET=dev-secret ALLOW_REGISTRATION=true cargo run -p presentation
|
||||||
|
|
||||||
|
# Build and push Docker image to private registry.
|
||||||
|
deploy:
|
||||||
|
./deploy.sh
|
||||||
|
|
||||||
|
.PHONY: check fmt fmt-check clippy test fix build-app dev dev-api deploy
|
||||||
Reference in New Issue
Block a user