/
Makefile
161 lines (131 loc) · 5.32 KB
/
Makefile
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# === Apps ===
run-bot: db-migrate
cd applications/bot && poetry run python main.py
run-bot-log-file: db-migrate
mkdir -p logs/bot
cd applications/bot && poetry run python main.py --logs ../../logs/bot/
run-bot-debug: db-migrate
cd applications/bot && poetry run python main.py --debug
run-bot-log-file-debug: db-migrate
mkdir -p logs/bot
cd applications/bot && poetry run python main.py --logs ../../logs/bot/ --debug
run-web: db-migrate
cd applications/web && poetry run python main.py
run-web-log-file: db-migrate
mkdir -p logs/web
cd applications/web && poetry run python main.py --logs ../../logs/web/
run-web-debug: db-migrate
cd applications/web && poetry run python main.py --debug
run-web-log-file-debug: db-migrate
mkdir -p logs/web
cd applications/web && poetry run python main.py --logs ../../logs/web/ --debug
run-extension:
cd applications/extension && npm run dev
# === Builds ===
build-extension:
cd applications/extension && npm run build
# === Database ===
db-migrate: docker-up-db
cd applications/bot && poetry run alembic upgrade head
# === Install ===
install: install-bot install-web install-extension;
install-web:
cd applications/web && poetry install --no-root
install-bot:
cd applications/bot && poetry install --no-root
install-extension:
cd applications/extension && npm install
# === Docker ===
docker-up:
docker-compose up -d
docker-build:
docker-compose build
docker-up-db:
docker-compose -f docker-compose.local.yml up -d postgres
# === Linting ===
lint: lint-web lint-bot lint-extension;
lint-web: lint-black-web lint-isort-web lint-mypy-web lint-pycln-web lint-pylint-web lint-ruff-web;
lint-bot: lint-black-bot lint-isort-bot lint-mypy-bot lint-pycln-bot lint-pylint-bot lint-ruff-bot;
lint-extension: lint-prettier-extension;
lint-black: lint-black-bot lint-black-web;
lint-isort: lint-isort-bot lint-isort-web;
lint-mypy: lint-mypy-bot lint-mypy-web;
lint-pycln: lint-pycln-bot lint-pycln-web;
lint-pylint: lint-pylint-bot lint-pylint-web;
lint-ruff: lint-ruff-bot lint-ruff-web;
lint-prettier: lint-prettier-extension;
lint-black-bot:
cd applications/bot && poetry run black --check src/
cd applications/bot && poetry run black --check alembic/
cd applications/bot && poetry run black --check main.py
lint-black-web:
cd applications/web && poetry run black --check src/
cd applications/web && poetry run black --check main.py
lint-isort-bot:
cd applications/bot && poetry run isort --check src/
cd applications/bot && poetry run isort --check alembic/
cd applications/bot && poetry run isort --check main.py
lint-isort-web:
cd applications/web && poetry run isort --check src/
cd applications/web && poetry run isort --check main.py
lint-mypy-bot:
cd applications/bot && poetry run mypy src/
cd applications/bot && poetry run mypy alembic/
cd applications/bot && poetry run mypy main.py
lint-mypy-web:
cd applications/web && poetry run mypy src/
cd applications/web && poetry run mypy main.py
lint-pycln-bot:
cd applications/bot && poetry run pycln --all --check src/
cd applications/bot && poetry run pycln --all --check alembic/
cd applications/bot && poetry run pycln --all --check main.py
lint-pycln-web:
cd applications/web && poetry run pycln --all --check src/
cd applications/web && poetry run pycln --all --check main.py
lint-pylint-bot:
cd applications/bot && poetry run pylint src/ || poetry run pylint-exit --error-fail $$?
cd applications/bot && poetry run pylint main.py || poetry run pylint-exit --error-fail $$?
lint-pylint-web:
cd applications/web && poetry run pylint src/ || poetry run pylint-exit --error-fail $$?
cd applications/web && poetry run pylint main.py || poetry run pylint-exit --error-fail $$?
lint-ruff-bot:
cd applications/bot && poetry run ruff src/
cd applications/bot && poetry run ruff alembic/
cd applications/bot && poetry run ruff main.py
lint-ruff-web:
cd applications/web && poetry run ruff src/
cd applications/web && poetry run ruff main.py
lint-prettier-extension:
cd applications/extension && npx prettier src/ --check
# === Formatting ===
format: format-web format-bot format-extension;
format-web: format-black-web format-isort-web format-pycln-web;
format-bot: format-black-bot format-isort-bot format-pycln-bot;
format-extension: format-prettier-extension;
format-black: format-black-bot format-black-web;
format-isort: format-isort-bot format-isort-web;
format-pycln: format-pycln-bot format-pycln-web;
format-prettier: format-prettier-extension;
format-black-bot:
cd applications/bot && poetry run black src/
cd applications/bot && poetry run black alembic/
cd applications/bot && poetry run black main.py
format-black-web:
cd applications/web && poetry run black src/
cd applications/web && poetry run black main.py
format-isort-bot:
cd applications/bot && poetry run isort src/
cd applications/bot && poetry run isort alembic/
cd applications/bot && poetry run isort main.py
format-isort-web:
cd applications/web && poetry run isort src/
cd applications/web && poetry run isort main.py
format-pycln-bot:
cd applications/bot && poetry run pycln --all src/
cd applications/bot && poetry run pycln --all alembic/
cd applications/bot && poetry run pycln --all main.py
format-pycln-web:
cd applications/web && poetry run pycln src/
cd applications/web && poetry run pycln main.py
format-prettier-extension:
cd applications/extension && npx prettier src --write