Skip to content

Commit 735f57c

Browse files
authored
📌 Maintenance/webserver requirements (ITISFoundation#2741)
1 parent c3f6073 commit 735f57c

File tree

18 files changed

+172
-308
lines changed

18 files changed

+172
-308
lines changed

‎requirements/base.Makefile‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ REPO_BASE_DIR := $(shell git rev-parse --show-toplevel)
88
.PHONY: touch reqs check clean help
99
.DEFAULT_GOAL := help
1010

11-
UPGRADE_OPTION := $(if $(upgrade),--upgrade-package $(upgrade),--upgrade)
11+
DO_CLEAN_OR_UPGRADE:=$(if $(clean),,--upgrade)
12+
UPGRADE_OPTION := $(if $(upgrade),--upgrade-package $(upgrade),$(DO_CLEAN_OR_UPGRADE))
1213

1314

1415
objects = $(sort $(wildcard *.in))

‎requirements/tools/Dockerfile‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ RUN pip --no-cache-dir install --upgrade \
2828

2929
# devenv
3030
RUN pip install \
31-
black \
32-
isort \
3331
pip-tools \
34-
bump2version \
35-
rope
32+
pipreqs \
33+
pipdeptree

‎requirements/tools/Makefile‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,8 @@ build build-nc: ## builds tooling image ${IMAGE_NAME}
9090
run: build ## Runs upgrade in a container [WARNING! UNDER DEV. USE CAREFULY]
9191
docker run -it \
9292
--workdir="/home/$(USER)" \
93-
--volume="/etc/group:/etc/group:ro" \
93+
--volume="/etc/group:/etc/group:ro" \
9494
--volume="/etc/passwd:/etc/passwd:ro" \
95-
--volume="/etc/shadow:/etc/shadow:ro" \
9695
--volume=$(REPODIR):/home/$(USER) \
9796
--user=$(shell id -u):$(shell id -g) \
9897
--entrypoint=/bin/bash \
@@ -104,9 +103,8 @@ run: build ## Runs upgrade in a container [WARNING! UNDER DEV. USE CAREFULY]
104103
shell: build ## Opens shell in ${IMAGE_NAME}
105104
docker run -it \
106105
--workdir="/home/$(USER)/requirements/tools" \
107-
--volume="/etc/group:/etc/group:ro" \
106+
--volume="/etc/group:/etc/group:ro" \
108107
--volume="/etc/passwd:/etc/passwd:ro" \
109-
--volume="/etc/shadow:/etc/shadow:ro" \
110108
--volume=$(REPODIR):/home/$(USER) \
111109
--user=$(shell id -u):$(shell id -g) \
112110
--entrypoint=/bin/bash \

‎scripts/common.Makefile‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,12 @@ version-major: ## commits version with backwards-INcompatible addition or change
153153
$(_bumpversion)
154154

155155

156+
.PHONE: pip-freeze
157+
pip-freeze: ## dumps current environ and base.txt [diagnostics]
158+
pip freeze > freeze-now.ignore.txt
159+
cat requirements/_base.txt | grep -v '#' > freeze-base.ignore.txt
160+
161+
156162
#
157163
# SUBTASKS
158164
#

‎services/web/server/requirements/Makefile‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,3 @@ include ../../../../requirements/base.Makefile
88

99
# TODO: Check these dependencies packages_input_reqs = $(shell grep "requirements/_base.in" _base.in | awk '{print $$2}')
1010
# _base.txt: _base.in $(packages_input_reqs)
11-
12-
_base.txt: _base.in _packages.in
13-
_packages.txt: _packages.in _base.in
14-
_test.txt: _base.txt _packages.txt

‎services/web/server/requirements/_base.in‎

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,19 @@
22
# Specifies third-party dependencies for 'services/web/server/src'
33
#
44
--constraint ../../../../requirements/constraints.txt
5+
--constraint ./constraints.txt
56

6-
# intra-repo packages CONSTRAINTS
7+
# intra-repo packages
78
# - Input-requirements on intra-repo packages are tested using latest updates
89
# - Added as constraints instead of requirements in order to avoid polluting base.txt
910
# - Will be installed when prod.txt or dev.txt
1011
#
11-
--constraint ../../../../packages/models-library/requirements/_base.in
12-
--constraint ../../../../packages/postgres-database/requirements/_base.in
13-
--constraint ../../../../packages/settings-library/requirements/_base.in
12+
--requirement ../../../../packages/models-library/requirements/_base.in
13+
--requirement ../../../../packages/postgres-database/requirements/_base.in
14+
--requirement ../../../../packages/settings-library/requirements/_base.in
1415
# simcore-service-library[aiohttp]
15-
--constraint ../../../../packages/service-library/requirements/_base.in
16-
--constraint ../../../../packages/service-library/requirements/_aiohttp.in
16+
--requirement ../../../../packages/service-library/requirements/_base.in
17+
--requirement ../../../../packages/service-library/requirements/_aiohttp.in
1718

1819

1920
# aiohttp + extensions
@@ -31,10 +32,13 @@ gunicorn[setproctitle]
3132
# socket_id saved in redis does not correspond to client's sio
3233
python-socketio~=4.6.1
3334

34-
# databases
35+
# postgres db
3536
aiopg[sa]
3637
asyncpg
3738

39+
# i/o
40+
aiofiles
41+
3842
# redis
3943
aioredis
4044
aioredlock
@@ -67,6 +71,7 @@ aiodebug
6771
change_case
6872
expiringdict
6973
semantic_version
74+
tenacity
7075

7176
# import/export excel
7277
parfive

‎services/web/server/requirements/_base.txt‎

Lines changed: 97 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,28 @@ aio-pika==6.8.0
99
aiodebug==1.1.2
1010
# via
1111
# -c requirements/../../../../packages/service-library/requirements/./_base.in
12-
# -c requirements/../../../../packages/service-library/requirements/_base.in
12+
# -r requirements/../../../../packages/service-library/requirements/_base.in
13+
# -r requirements/_base.in
14+
aiofiles==0.8.0
15+
# via
16+
# -c requirements/../../../../packages/service-library/requirements/./_base.in
17+
# -r requirements/../../../../packages/service-library/requirements/_base.in
1318
# -r requirements/_base.in
1419
aiohttp==3.7.4.post0
1520
# via
1621
# -c requirements/../../../../packages/models-library/requirements/../../../requirements/constraints.txt
1722
# -c requirements/../../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
1823
# -c requirements/../../../../packages/service-library/requirements/../../../requirements/constraints.txt
1924
# -c requirements/../../../../packages/service-library/requirements/./../../../requirements/constraints.txt
20-
# -c requirements/../../../../packages/service-library/requirements/_aiohttp.in
2125
# -c requirements/../../../../packages/settings-library/requirements/../../../requirements/constraints.txt
2226
# -c requirements/../../../../requirements/constraints.txt
27+
# -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
2328
# -r requirements/_base.in
2429
# aiohttp-jinja2
2530
# aiohttp-security
2631
# aiohttp-session
2732
# aiohttp-swagger
33+
# aiozipkin
2834
# parfive
2935
aiohttp-jinja2==1.4.2
3036
# via -r requirements/_base.in
@@ -36,7 +42,7 @@ aiohttp-swagger==1.0.15
3642
# via -r requirements/_base.in
3743
aiopg==1.2.1
3844
# via
39-
# -c requirements/../../../../packages/service-library/requirements/_aiohttp.in
45+
# -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
4046
# -r requirements/_base.in
4147
aioredis==1.3.1
4248
# via
@@ -54,6 +60,10 @@ aiormq==3.3.1
5460
# via aio-pika
5561
aiosmtplib==1.1.6
5662
# via -r requirements/_base.in
63+
aiozipkin==1.1.1
64+
# via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
65+
alembic==1.7.5
66+
# via -r requirements/../../../../packages/postgres-database/requirements/_base.in
5767
async-timeout==3.0.1
5868
# via
5969
# aiohttp
@@ -65,15 +75,19 @@ attrs==20.3.0
6575
# via
6676
# -c requirements/../../../../packages/service-library/requirements/././constraints.txt
6777
# -c requirements/../../../../packages/service-library/requirements/./constraints.txt
68-
# -c requirements/../../../../packages/service-library/requirements/_aiohttp.in
78+
# -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
6979
# aiohttp
7080
# aioredlock
81+
# jsonschema
82+
# openapi-core
7183
cffi==1.14.5
7284
# via cryptography
7385
change-case==0.5.2
7486
# via -r requirements/_base.in
7587
chardet==4.0.0
7688
# via aiohttp
89+
click==8.0.3
90+
# via typer
7791
cryptography==3.4.7
7892
# via
7993
# -c requirements/../../../../packages/models-library/requirements/../../../requirements/constraints.txt
@@ -98,12 +112,27 @@ hiredis==2.0.0
98112
# via aioredis
99113
idna==2.10
100114
# via
101-
# -c requirements/../../../../packages/models-library/requirements/_base.in
102-
# -c requirements/../../../../packages/postgres-database/requirements/_base.in
103115
# -c requirements/../../../../packages/service-library/requirements/././constraints.txt
104116
# -c requirements/../../../../packages/service-library/requirements/./constraints.txt
117+
# -r requirements/../../../../packages/models-library/requirements/_base.in
118+
# -r requirements/../../../../packages/postgres-database/requirements/_base.in
105119
# email-validator
106120
# yarl
121+
importlib-metadata==4.10.0
122+
# via alembic
123+
importlib-resources==5.4.0 ; python_version < "3.9"
124+
# via
125+
# -c requirements/../../../../packages/models-library/requirements/../../../requirements/constraints.txt
126+
# -c requirements/../../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
127+
# -c requirements/../../../../packages/service-library/requirements/../../../requirements/constraints.txt
128+
# -c requirements/../../../../packages/service-library/requirements/./../../../requirements/constraints.txt
129+
# -c requirements/../../../../packages/settings-library/requirements/../../../requirements/constraints.txt
130+
# -c requirements/../../../../requirements/constraints.txt
131+
# alembic
132+
isodate==0.6.1
133+
# via
134+
# openapi-core
135+
# openapi-schema-validator
107136
jinja-app-loader==1.0.2
108137
# via -r requirements/_base.in
109138
jinja2==2.11.3
@@ -120,14 +149,37 @@ json2html==1.3.0
120149
# via -r requirements/_base.in
121150
jsondiff==1.3.0
122151
# via -r requirements/_base.in
152+
jsonschema==3.2.0
153+
# via
154+
# -c requirements/../../../../packages/service-library/requirements/././constraints.txt
155+
# -c requirements/../../../../packages/service-library/requirements/./constraints.txt
156+
# -c requirements/./constraints.txt
157+
# -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
158+
# openapi-schema-validator
159+
# openapi-spec-validator
160+
lazy-object-proxy==1.4.3
161+
# via
162+
# -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
163+
# openapi-core
164+
mako==1.1.6
165+
# via alembic
123166
markupsafe==1.1.1
124167
# via
125168
# aiohttp-swagger
126169
# jinja2
170+
# mako
127171
multidict==5.1.0
128172
# via
129173
# aiohttp
130174
# yarl
175+
openapi-core==0.12.0
176+
# via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
177+
openapi-schema-validator==0.1.6
178+
# via
179+
# -c requirements/./constraints.txt
180+
# openapi-spec-validator
181+
openapi-spec-validator==0.3.1
182+
# via openapi-core
131183
openpyxl==3.0.7
132184
# via -r requirements/_base.in
133185
orjson==3.5.3
@@ -138,6 +190,8 @@ parfive==1.5.1
138190
# via -r requirements/_base.in
139191
passlib==1.7.4
140192
# via -r requirements/_base.in
193+
prometheus-client==0.12.0
194+
# via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
141195
psycopg2-binary==2.9.1
142196
# via
143197
# aiopg
@@ -147,16 +201,25 @@ pycparser==2.20
147201
pydantic==1.8.2
148202
# via
149203
# -c requirements/../../../../packages/models-library/requirements/../../../requirements/constraints.txt
150-
# -c requirements/../../../../packages/models-library/requirements/_base.in
151204
# -c requirements/../../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
152205
# -c requirements/../../../../packages/service-library/requirements/../../../requirements/constraints.txt
153206
# -c requirements/../../../../packages/service-library/requirements/./../../../requirements/constraints.txt
154207
# -c requirements/../../../../packages/service-library/requirements/./_base.in
155-
# -c requirements/../../../../packages/service-library/requirements/_base.in
156208
# -c requirements/../../../../packages/settings-library/requirements/../../../requirements/constraints.txt
157-
# -c requirements/../../../../packages/settings-library/requirements/_base.in
158209
# -c requirements/../../../../requirements/constraints.txt
210+
# -r requirements/../../../../packages/models-library/requirements/_base.in
211+
# -r requirements/../../../../packages/service-library/requirements/_base.in
212+
# -r requirements/../../../../packages/settings-library/requirements/_base.in
159213
# -r requirements/_base.in
214+
pyinstrument==3.4.2
215+
# via
216+
# -c requirements/../../../../packages/service-library/requirements/./_base.in
217+
# -c requirements/./constraints.txt
218+
# -r requirements/../../../../packages/service-library/requirements/_base.in
219+
pyinstrument-cext==0.2.4
220+
# via pyinstrument
221+
pyrsistent==0.18.0
222+
# via jsonschema
160223
python-engineio==3.14.2
161224
# via python-socketio
162225
python-magic==0.4.24
@@ -172,29 +235,43 @@ pyyaml==5.4.1
172235
# -c requirements/../../../../packages/service-library/requirements/././constraints.txt
173236
# -c requirements/../../../../packages/service-library/requirements/./_base.in
174237
# -c requirements/../../../../packages/service-library/requirements/./constraints.txt
175-
# -c requirements/../../../../packages/service-library/requirements/_base.in
176238
# -c requirements/../../../../packages/settings-library/requirements/../../../requirements/constraints.txt
177239
# -c requirements/../../../../requirements/constraints.txt
240+
# -r requirements/../../../../packages/service-library/requirements/_base.in
178241
# aiohttp-swagger
242+
# openapi-spec-validator
179243
# trafaret-config
180244
semantic-version==2.8.5
181245
# via -r requirements/_base.in
182246
setproctitle==1.2.2
183247
# via gunicorn
184248
six==1.16.0
185249
# via
250+
# isodate
251+
# jsonschema
252+
# openapi-core
253+
# openapi-schema-validator
254+
# openapi-spec-validator
186255
# python-engineio
187256
# python-socketio
188257
sqlalchemy==1.3.24
189258
# via
190259
# -c requirements/../../../../packages/models-library/requirements/../../../requirements/constraints.txt
191260
# -c requirements/../../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
192-
# -c requirements/../../../../packages/postgres-database/requirements/_base.in
193261
# -c requirements/../../../../packages/service-library/requirements/../../../requirements/constraints.txt
194262
# -c requirements/../../../../packages/service-library/requirements/./../../../requirements/constraints.txt
195263
# -c requirements/../../../../packages/settings-library/requirements/../../../requirements/constraints.txt
196264
# -c requirements/../../../../requirements/constraints.txt
265+
# -r requirements/../../../../packages/postgres-database/requirements/_base.in
197266
# aiopg
267+
# alembic
268+
strict-rfc3339==0.7
269+
# via openapi-core
270+
tenacity==8.0.1
271+
# via
272+
# -c requirements/../../../../packages/service-library/requirements/./_base.in
273+
# -r requirements/../../../../packages/service-library/requirements/_base.in
274+
# -r requirements/_base.in
198275
tqdm==4.61.1
199276
# via parfive
200277
trafaret==2.1.0
@@ -203,20 +280,28 @@ trafaret==2.1.0
203280
# trafaret-config
204281
trafaret-config==2.0.2
205282
# via -r requirements/_base.in
283+
typer==0.4.0
284+
# via -r requirements/../../../../packages/settings-library/requirements/_base.in
206285
typing-extensions==3.10.0.2
207286
# via
208287
# aiohttp
209288
# aiohttp-jinja2
210289
# pydantic
211290
ujson==4.0.2
212291
# via aiohttp-swagger
292+
werkzeug==2.0.2
293+
# via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in
213294
yarl==1.5.1
214295
# via
215-
# -c requirements/../../../../packages/postgres-database/requirements/_base.in
296+
# -r requirements/../../../../packages/postgres-database/requirements/_base.in
216297
# -r requirements/_base.in
217298
# aio-pika
218299
# aiohttp
219300
# aiormq
301+
zipp==3.7.0
302+
# via
303+
# importlib-metadata
304+
# importlib-resources
220305

221306
# The following packages are considered to be unsafe in a requirements file:
222307
# setuptools

‎services/web/server/requirements/_packages.in‎

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)