-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
65 lines (50 loc) · 1.44 KB
/
Makefile
File metadata and controls
65 lines (50 loc) · 1.44 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
62
63
64
65
SHELL := /bin/sh
UV ?= uv
PYTHON ?= python3
OUTPUT_DIR ?= output
WEB_DIR ?= web
export UV_CACHE_DIR ?= .uv-cache
export UV_OFFLINE ?= 0
PY_SOURCES ?= src tests agent
.PHONY: bootstrap test proof lint format analyze api worker agent-scan web-install web-dev web-test clean
bootstrap:
$(UV) sync --dev
pnpm --dir $(WEB_DIR) install
test:
./rade-proof
proof:
.venv/bin/python -m pytest -q
.venv/bin/python -m tests.runner
.venv/bin/ruff check $(PY_SOURCES)
.venv/bin/python -m black --check $(PY_SOURCES)
pnpm --dir $(WEB_DIR) lint
pnpm --dir $(WEB_DIR) test
@echo "All proof gates passed."
lint:
$(UV) run ruff check $(PY_SOURCES)
$(UV) run black --check $(PY_SOURCES)
pnpm --dir $(WEB_DIR) lint
format:
$(UV) run ruff check --fix $(PY_SOURCES)
$(UV) run black $(PY_SOURCES)
analyze:
$(PYTHON) -m src.core.cli analyze \
--input examples/sample_ios_output.json \
--app-id com.example.legacyapp \
--json-output $(OUTPUT_DIR)/modernization_report.json \
--md-output $(OUTPUT_DIR)/modernization_report.md \
--html-output $(OUTPUT_DIR)/modernization_report.html
api:
./rade-devserver src.api.wsgi:application --host 127.0.0.1 --port 8000
worker:
$(PYTHON) -m src.worker.main
agent-scan:
$(PYTHON) -m agent.cli scan
web-install:
pnpm --dir $(WEB_DIR) install
web-dev:
node $(WEB_DIR)/scripts/dev.mjs
web-test:
pnpm --dir $(WEB_DIR) test
clean:
rm -rf $(OUTPUT_DIR)/*.json $(OUTPUT_DIR)/*.md $(OUTPUT_DIR)/*.html .uv-cache .ruff_cache