-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
61 lines (48 loc) · 1.55 KB
/
Copy pathMakefile
File metadata and controls
61 lines (48 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
.PHONY: help bootstrap install dev build lint typecheck test migrate seed deploy rollback clean
help:
@echo "Buildplan.ai — common tasks"
@echo " make bootstrap Terraform apply infra (Neon, R2, Upstash, Fly, Vercel)"
@echo " make install Install all JS + Python deps"
@echo " make dev Run web + api locally"
@echo " make build Build all packages"
@echo " make lint Lint JS + Python"
@echo " make typecheck Typecheck JS + Python"
@echo " make test Run unit + integration tests"
@echo " make migrate Run Alembic migrations against DATABASE_URL"
@echo " make seed Seed plan templates + examples"
@echo " make deploy Trigger prod deploy (Vercel + Fly)"
@echo " make rollback Roll back last deploy"
@echo " make clean Remove build artifacts"
bootstrap:
cd infra/terraform && terraform init && terraform apply
install:
pnpm install
cd services/api && uv sync
dev:
pnpm dev
build:
pnpm build
lint:
pnpm lint
cd services/api && uv run ruff check .
typecheck:
pnpm typecheck
cd services/api && uv run mypy app
test:
pnpm test
cd services/api && uv run pytest
migrate:
cd services/api && uv run alembic upgrade head
seed:
cd services/api && uv run python -m app.scripts.seed
deploy:
vercel --prod
cd services/api && fly deploy
rollback:
vercel rollback
cd services/api && fly releases rollback
cd services/api && uv run alembic downgrade -1
clean:
pnpm clean
find . -type d -name __pycache__ -prune -exec rm -rf {} +
find . -type d -name .pytest_cache -prune -exec rm -rf {} +