-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
84 lines (58 loc) · 2.65 KB
/
Copy pathMakefile
File metadata and controls
84 lines (58 loc) · 2.65 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
SHELL := /usr/bin/env bash
APP_NAME := $(shell sed -n 's/^APP_NAME=//p' .env 2>/dev/null)
DART_DEFINES := --dart-define=API_BASE_URL=http://$(APP_NAME).localhost
.PHONY: setup generate contract-validate contract-generate contract-check-generated \
snapshot-eq2 snapshot-eq2-check test test-contract test-clients test-client-dart-dio \
test-client-python test-client-typescript-axios install-cli test-cli test-app test-api test-website \
up down logs migrate build run-app
setup:
./scripts/setup.sh
generate: contract-generate
contract-validate:
./scripts/validate-contract.sh
contract-generate:
./scripts/generate-clients.sh
contract-check-generated:
./scripts/check-generated-clients.sh
snapshot-eq2:
python3 scripts/census_snapshot.py capture --namespace eq2 --collections character
snapshot-eq2-check:
python3 scripts/census_snapshot.py check --namespace eq2 --collections character
test: test-contract test-clients test-cli test-api test-website
test-contract: contract-validate
python3 -m unittest discover -s tests -v
test-clients: test-client-dart-dio test-client-python test-client-typescript-axios
test-client-dart-dio:
cd packages/darkclaw-census-api-client-dart-dio && dart pub get && dart run build_runner build && dart analyze && dart test
test-client-python:
python3 -m venv packages/darkclaw-census-api-client-python/.venv
packages/darkclaw-census-api-client-python/.venv/bin/pip install -q -e packages/darkclaw-census-api-client-python pytest
packages/darkclaw-census-api-client-python/.venv/bin/python -m compileall -q packages/darkclaw-census-api-client-python/darkclaw_census_api_client
packages/darkclaw-census-api-client-python/.venv/bin/pytest -q packages/darkclaw-census-api-client-python/test
test-client-typescript-axios:
npm --prefix packages/darkclaw-census-api-client-typescript-axios install --no-audit --no-fund
npm --prefix packages/darkclaw-census-api-client-typescript-axios run build
install-cli:
python3 -m venv packages/darkclaw-census-api-client-python/.venv
packages/darkclaw-census-api-client-python/.venv/bin/pip install -q -e packages/darkclaw-census-api-client-python
test-cli:
packages/darkclaw-census-api-client-python/.venv/bin/python -m unittest discover -s cli/tests -v
up:
docker compose up --build -d
down:
docker compose down
logs:
docker compose logs --follow api website
migrate:
docker compose exec api php artisan migrate
test-api:
docker compose run --rm api php artisan test
test-website:
npm --prefix website test -- --run
npm --prefix website run build
test-app:
cd app && flutter analyze && flutter test $(DART_DEFINES)
run-app:
cd app && flutter run $(DART_DEFINES)
build:
docker compose build