Repository navigation
Expand file tree
/
Copy pathMakefile
More file actions
50 lines (42 loc) · 1.66 KB
/
Copy pathMakefile
File metadata and controls
50 lines (42 loc) · 1.66 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
export RUNTIMEDB_IMAGE ?= ghcr.io/hotdata-dev/runtimedb:latest
export LOCAL_PORT ?= 3000
STORAGE_URL := http://127.0.0.1:9000
.PHONY: verify floor integration local-up local-down local-pull
verify:
uv run --group dev ruff check .
uv run --group dev ruff format --check .
uv run --group dev mypy
uv run --group dev pytest --disable-socket -q
uv run --no-project python scripts/check_links.py
floor:
@requirements="$$(mktemp)"; \
uv pip compile pyproject.toml --all-extras --resolution lowest-direct \
--python-version 3.11 --quiet --output-file "$$requirements" && \
uv run --isolated --no-project --python 3.11 --with-requirements "$$requirements" \
--with-editable . --with pytest --with pytest-socket --with tiktoken \
--with json-repair --with scipy \
pytest --disable-socket -q -p no:cacheprovider
integration:
HOTMEMORY_TEST_URL=$${HOTMEMORY_TEST_URL:-http://localhost:$(LOCAL_PORT)} \
uv run --group dev pytest -q -m hotdata
local-up:
docker compose up -d --wait catalog storage
@for i in $$(seq 1 30); do \
curl -s -o /dev/null $(STORAGE_URL)/ && break; \
sleep 1; \
done
curl -fsS -o /dev/null -X PUT --aws-sigv4 "aws:amz:us-east-1:s3" \
--user hotmemory:hotmemory-local $(STORAGE_URL)/runtimedb
RUNTIMEDB_SECRET_KEY="$$(openssl rand -base64 32)" docker compose up -d runtimedb
@for i in $$(seq 1 60); do \
curl -fs -o /dev/null http://localhost:$(LOCAL_PORT)/health && \
echo "RuntimeDB is up at http://localhost:$(LOCAL_PORT)" && exit 0; \
sleep 1; \
done; \
echo "RuntimeDB did not answer /health in 60 seconds"; \
docker compose logs --tail 50 runtimedb; \
exit 1
local-down:
docker compose down -v
local-pull:
docker compose pull