Skip to content

Commit 27668dd

Browse files
authored
Upgrades storage service dependencies (#1708)
1 parent 7720323 commit 27668dd

File tree

11 files changed

+110
-61
lines changed

11 files changed

+110
-61
lines changed

Makefile

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,10 +205,15 @@ up-devel: .stack-simcore-development.yml .init-swarm $(CLIENT_WEB_OUTPUT) ## Dep
205205
$(MAKE_C) services/web/client follow-dev-logs
206206

207207

208-
up-prod: .stack-simcore-production.yml .init-swarm ## Deploys local production stack and ops stack (pass 'make ops_disabled=1 up-...' to disable)
208+
up-prod: .stack-simcore-production.yml .init-swarm ## Deploys local production stack and ops stack (pass 'make ops_disabled=1 up-...' to disable or target=<service-name> to deploy a single service)
209+
ifeq ($(target),)
209210
# Deploy stack $(SWARM_STACK_NAME)
210211
@docker stack deploy -c $< $(SWARM_STACK_NAME)
211212
$(MAKE) .deploy-ops
213+
else
214+
# deploys ONLY $(target) service
215+
docker-compose -f $< up --detach $(target)
216+
endif
212217

213218
up-version: .stack-simcore-version.yml .init-swarm ## Deploys versioned stack '$(DOCKER_REGISTRY)/{service}:$(DOCKER_IMAGE_TAG)' and ops stack (pass 'make ops_disabled=1 up-...' to disable)
214219
# Deploy stack $(SWARM_STACK_NAME)
@@ -390,6 +395,7 @@ postgres-upgrade: ## initalize or upgrade postgres db to latest state
390395
@$(MAKE_C) packages/postgres-database/docker build
391396
@$(MAKE_C) packages/postgres-database/docker upgrade
392397

398+
393399
local_registry=registry
394400
.PHONY: local-registry
395401
local-registry: .env ## creates a local docker registry and configure simcore to use it (NOTE: needs admin rights)

packages/postgres-database/requirements/_test.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ docker-compose==1.26.2 # via pytest-docker
2424
docker[ssh]==4.3.0 # via -r requirements/_migration.txt, docker-compose
2525
dockerpty==0.4.1 # via docker-compose
2626
docopt==0.6.2 # via coveralls, docker-compose
27-
faker==4.1.1 # via -r requirements/_test.in
27+
faker==4.1.2 # via -r requirements/_test.in
2828
idna-ssl==1.1.0 # via aiohttp
2929
idna==2.10 # via -r requirements/_migration.txt, idna-ssl, requests, yarl
3030
importlib-metadata==1.7.0 # via jsonschema, pluggy, pytest

scripts/common.Makefile

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,14 @@ shell: ## runs shell in production container
148148
# SUBTASKS
149149
#
150150

151-
.PHONY: _check_venv_active
152-
_check_venv_active:
151+
.PHONY: _check_python_version _check_venv_active
152+
153+
_check_python_version:
154+
# Checking that runs with correct python version
155+
@python3 -c "import sys; assert sys.version_info[:2]==(3,6), f'Expected python 3.6, got {sys.version_info}'"
156+
157+
158+
_check_venv_active: _check_python_version
153159
# checking whether virtual environment was activated
154160
@python3 -c "import sys; assert sys.base_prefix!=sys.prefix"
155161

scripts/requirements/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ MAKE_C := $(MAKE) --no-print-directory --directory
2828
# packages/
2929
_input-requirements = $(shell find ${PACKAGES_DIR} -type f -name _base.in)
3030
# api tests
31-
_input-requirements += $(shell find $(REPODIR)/api/tests/ -type f -name *.in)
31+
_input-requirements += $(shell find $(REPODIR)/api/tests/ -type f -name "*.in")
3232
# system tests
33-
_input-requirements += $(shell find $(REPODIR)/tests/ -type f -name *.in)
33+
_input-requirements += $(shell find $(REPODIR)/tests/ -type f -name "*.in")
3434

3535
$(info Found $(_input-requirements))
3636

services/storage/requirements/_base.txt

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ aiofiles==0.5.0 # via -r requirements/_base.in
1010
aiohttp==3.6.2 # via -r requirements/../../../packages/service-library/requirements/_base.in, -r requirements/_base.in, aiobotocore, aiozipkin
1111
aioitertools==0.7.0 # via aiobotocore
1212
aiopg[sa]==1.0.0 # via -r requirements/../../../packages/service-library/requirements/_base.in, -r requirements/_base.in
13-
aiozipkin==0.6.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
13+
aiozipkin==0.7.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
1414
async-timeout==3.0.1 # via aiohttp
1515
attrs==19.3.0 # via -r requirements/../../../packages/service-library/requirements/_base.in, aiohttp, jsonschema, openapi-core
16-
blackfynn==3.6.3 # via -r requirements/_base.in
16+
blackfynn==4.0.0 # via -r requirements/_base.in
1717
boto3==1.12.32 # via -r requirements/_base.in, blackfynn
1818
botocore==1.15.32 # via aiobotocore, boto3, s3transfer
1919
certifi==2020.6.20 # via requests
@@ -24,19 +24,19 @@ docopt==0.6.2 # via blackfynn
2424
docutils==0.15.2 # via botocore
2525
future==0.18.2 # via blackfynn
2626
idna-ssl==1.1.0 # via aiohttp
27-
idna==2.9 # via idna-ssl, requests, yarl
28-
importlib-metadata==1.6.1 # via jsonschema
27+
idna==2.10 # via idna-ssl, requests, yarl
28+
importlib-metadata==1.7.0 # via jsonschema
2929
isodate==0.6.0 # via openapi-core
3030
jmespath==0.10.0 # via boto3, botocore
3131
jsonschema==3.2.0 # via -r requirements/../../../packages/service-library/requirements/_base.in, openapi-spec-validator
3232
lazy-object-proxy==1.4.3 # via -r requirements/../../../packages/service-library/requirements/_base.in, openapi-core
33-
marshmallow==3.6.1 # via -r requirements/_base.in
33+
marshmallow==3.7.1 # via -r requirements/_base.in
3434
multidict==4.7.6 # via aiohttp, yarl
3535
openapi-core==0.12.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
36-
openapi-spec-validator==0.2.8 # via openapi-core
36+
openapi-spec-validator==0.2.9 # via openapi-core
3737
prometheus-client==0.8.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
38-
protobuf==3.12.2 # via blackfynn
39-
psutil==5.7.0 # via blackfynn
38+
protobuf==3.13.0 # via blackfynn
39+
psutil==5.7.2 # via blackfynn
4040
psycopg2-binary==2.8.5 # via -r requirements/../../../packages/service-library/requirements/_base.in, aiopg, sqlalchemy
4141
pyrsistent==0.16.0 # via jsonschema
4242
python-dateutil==2.8.1 # via blackfynn, botocore
@@ -52,13 +52,13 @@ strict-rfc3339==0.7 # via openapi-core
5252
tenacity==6.2.0 # via -r requirements/../../../packages/service-library/requirements/_base.in, -r requirements/_base.in
5353
trafaret-config==2.0.2 # via -r requirements/_base.in
5454
trafaret==2.0.2 # via -r requirements/../../../packages/service-library/requirements/_base.in, -r requirements/_base.in, trafaret-config
55-
typing-extensions==3.7.4.2 # via aiohttp, aioitertools
56-
ujson==3.0.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
57-
urllib3==1.25.9 # via botocore, requests
55+
typing-extensions==3.7.4.2 # via aiohttp, aioitertools, yarl
56+
ujson==3.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in
57+
urllib3==1.25.10 # via botocore, requests
5858
websocket-client==0.57.0 # via blackfynn
5959
werkzeug==1.0.1 # via -r requirements/../../../packages/service-library/requirements/_base.in
6060
wrapt==1.12.1 # via aiobotocore, deprecated
61-
yarl==1.4.2 # via -r requirements/../../../packages/postgres-database/requirements/_base.in, aiohttp
61+
yarl==1.5.1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in, aiohttp
6262
zipp==3.1.0 # via importlib-metadata
6363

6464
# The following packages are considered to be unsafe in a requirements file:

services/storage/requirements/_test.txt

Lines changed: 43 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -10,82 +10,95 @@ aiofiles==0.5.0 # via -r requirements/_base.txt
1010
aiohttp==3.6.2 # via -r requirements/_base.txt, aiobotocore, aiozipkin, pytest-aiohttp
1111
aioitertools==0.7.0 # via -r requirements/_base.txt, aiobotocore
1212
aiopg[sa]==1.0.0 # via -r requirements/_base.txt
13-
aiozipkin==0.6.0 # via -r requirements/_base.txt
13+
aiozipkin==0.7.0 # via -r requirements/_base.txt
1414
astroid==2.4.2 # via pylint
1515
async-timeout==3.0.1 # via -r requirements/_base.txt, aiohttp
1616
attrs==19.3.0 # via -r requirements/_base.txt, aiohttp, jsonschema, openapi-core, pytest, pytest-docker
17-
blackfynn==3.6.3 # via -r requirements/_base.txt
17+
bcrypt==3.2.0 # via paramiko
18+
blackfynn==4.0.0 # via -r requirements/_base.txt
1819
boto3==1.12.32 # via -r requirements/_base.txt, blackfynn
1920
botocore==1.15.32 # via -r requirements/_base.txt, aiobotocore, boto3, s3transfer
21+
cached-property==1.5.1 # via docker-compose
2022
certifi==2020.6.20 # via -r requirements/_base.txt, requests
23+
cffi==1.14.2 # via bcrypt, cryptography, pynacl
2124
chardet==3.0.4 # via -r requirements/_base.txt, aiohttp, requests
22-
codecov==2.1.7 # via -r requirements/_test.in
25+
codecov==2.1.8 # via -r requirements/_test.in
2326
configparser==5.0.0 # via -r requirements/_base.txt, blackfynn
24-
coverage==5.1 # via -r requirements/_test.in, codecov, coveralls, pytest-cov
25-
coveralls==2.0.0 # via -r requirements/_test.in
27+
coverage==5.2.1 # via -r requirements/_test.in, codecov, coveralls, pytest-cov
28+
coveralls==2.1.2 # via -r requirements/_test.in
29+
cryptography==3.0 # via paramiko
2630
deprecated==1.2.10 # via -r requirements/_base.txt, blackfynn
27-
docopt==0.6.2 # via -r requirements/_base.txt, blackfynn, coveralls
31+
distro==1.5.0 # via docker-compose
32+
docker-compose==1.26.2 # via pytest-docker
33+
docker[ssh]==4.3.1 # via docker-compose
34+
dockerpty==0.4.1 # via docker-compose
35+
docopt==0.6.2 # via -r requirements/_base.txt, blackfynn, coveralls, docker-compose
2836
docutils==0.15.2 # via -r requirements/_base.txt, botocore
2937
future==0.18.2 # via -r requirements/_base.txt, blackfynn
3038
idna-ssl==1.1.0 # via -r requirements/_base.txt, aiohttp
31-
idna==2.9 # via -r requirements/_base.txt, idna-ssl, requests, yarl
32-
importlib-metadata==1.6.1 # via -r requirements/_base.txt, jsonschema, pluggy, pytest
39+
idna==2.10 # via -r requirements/_base.txt, idna-ssl, requests, yarl
40+
importlib-metadata==1.7.0 # via -r requirements/_base.txt, jsonschema, pluggy, pytest
3341
isodate==0.6.0 # via -r requirements/_base.txt, openapi-core
34-
isort==4.3.21 # via pylint
42+
isort==5.4.2 # via pylint
3543
jmespath==0.10.0 # via -r requirements/_base.txt, boto3, botocore
36-
jsonschema==3.2.0 # via -r requirements/_base.txt, openapi-spec-validator
44+
jsonschema==3.2.0 # via -r requirements/_base.txt, docker-compose, openapi-spec-validator
3745
lazy-object-proxy==1.4.3 # via -r requirements/_base.txt, astroid, openapi-core
38-
marshmallow==3.6.1 # via -r requirements/_base.txt
46+
marshmallow==3.7.1 # via -r requirements/_base.txt
3947
mccabe==0.6.1 # via pylint
4048
more-itertools==8.4.0 # via pytest
4149
multidict==4.7.6 # via -r requirements/_base.txt, aiohttp, yarl
42-
numpy==1.19.0 # via pandas
50+
numpy==1.19.1 # via pandas
4351
openapi-core==0.12.0 # via -r requirements/_base.txt
44-
openapi-spec-validator==0.2.8 # via -r requirements/_base.txt, openapi-core
52+
openapi-spec-validator==0.2.9 # via -r requirements/_base.txt, openapi-core
4553
packaging==20.4 # via pytest, pytest-sugar
46-
pandas==1.0.5 # via -r requirements/_test.in
54+
pandas==1.1.1 # via -r requirements/_test.in
55+
paramiko==2.7.1 # via docker
4756
pluggy==0.13.1 # via pytest
4857
prometheus-client==0.8.0 # via -r requirements/_base.txt
49-
protobuf==3.12.2 # via -r requirements/_base.txt, blackfynn
50-
psutil==5.7.0 # via -r requirements/_base.txt, blackfynn
58+
protobuf==3.13.0 # via -r requirements/_base.txt, blackfynn
59+
psutil==5.7.2 # via -r requirements/_base.txt, blackfynn
5160
psycopg2-binary==2.8.5 # via -r requirements/_base.txt, aiopg, sqlalchemy
5261
ptvsd==4.3.2 # via -r requirements/_test.in
5362
py==1.9.0 # via pytest
54-
pylint==2.5.3 # via -r requirements/_test.in
63+
pycparser==2.20 # via cffi
64+
pylint==2.6.0 # via -r requirements/_test.in
65+
pynacl==1.4.0 # via paramiko
5566
pyparsing==2.4.7 # via packaging
5667
pyrsistent==0.16.0 # via -r requirements/_base.txt, jsonschema
5768
pytest-aiohttp==0.3.0 # via -r requirements/_test.in
58-
pytest-cov==2.10.0 # via -r requirements/_test.in
59-
pytest-docker==0.7.2 # via -r requirements/_test.in
69+
pytest-cov==2.10.1 # via -r requirements/_test.in
70+
pytest-docker==0.8.0 # via -r requirements/_test.in
6071
pytest-instafail==0.4.2 # via -r requirements/_test.in
61-
pytest-mock==3.1.1 # via -r requirements/_test.in
72+
pytest-mock==3.2.0 # via -r requirements/_test.in
6273
pytest-runner==5.2 # via -r requirements/_test.in
63-
pytest-sugar==0.9.3 # via -r requirements/_test.in
64-
pytest==5.4.3 # via -r requirements/_test.in, pytest-aiohttp, pytest-cov, pytest-instafail, pytest-mock, pytest-sugar
74+
pytest-sugar==0.9.4 # via -r requirements/_test.in
75+
pytest==5.4.3 # via -r requirements/_test.in, pytest-aiohttp, pytest-cov, pytest-docker, pytest-instafail, pytest-mock, pytest-sugar
6576
python-dateutil==2.8.1 # via -r requirements/_base.txt, blackfynn, botocore, pandas
77+
python-dotenv==0.14.0 # via docker-compose
6678
pytz==2020.1 # via -r requirements/_base.txt, blackfynn, pandas
67-
pyyaml==5.3.1 # via -r requirements/_base.txt, openapi-spec-validator, trafaret-config
68-
requests==2.24.0 # via -r requirements/_base.txt, blackfynn, codecov, coveralls
79+
pyyaml==5.3.1 # via -r requirements/_base.txt, docker-compose, openapi-spec-validator, trafaret-config
80+
requests==2.24.0 # via -r requirements/_base.txt, blackfynn, codecov, coveralls, docker, docker-compose
6981
s3transfer==0.3.3 # via -r requirements/_base.txt, boto3
7082
semantic-version==2.8.5 # via -r requirements/_base.txt
7183
semver==2.10.2 # via -r requirements/_base.txt, blackfynn
72-
six==1.15.0 # via -r requirements/_base.txt, astroid, isodate, jsonschema, openapi-core, openapi-spec-validator, packaging, protobuf, pyrsistent, python-dateutil, tenacity, websocket-client
84+
six==1.15.0 # via -r requirements/_base.txt, astroid, bcrypt, cryptography, docker, docker-compose, dockerpty, isodate, jsonschema, openapi-core, openapi-spec-validator, packaging, protobuf, pynacl, pyrsistent, python-dateutil, tenacity, websocket-client
7385
sqlalchemy[postgresql_psycopg2binary]==1.3.18 # via -r requirements/_base.txt, aiopg
7486
strict-rfc3339==0.7 # via -r requirements/_base.txt, openapi-core
7587
tenacity==6.2.0 # via -r requirements/_base.txt
7688
termcolor==1.1.0 # via pytest-sugar
89+
texttable==1.6.2 # via docker-compose
7790
toml==0.10.1 # via pylint
7891
trafaret-config==2.0.2 # via -r requirements/_base.txt
7992
trafaret==2.0.2 # via -r requirements/_base.txt, trafaret-config
8093
typed-ast==1.4.1 # via astroid
81-
typing-extensions==3.7.4.2 # via -r requirements/_base.txt, aiohttp, aioitertools
82-
ujson==3.0.0 # via -r requirements/_base.txt
83-
urllib3==1.25.9 # via -r requirements/_base.txt, botocore, requests
94+
typing-extensions==3.7.4.2 # via -r requirements/_base.txt, aiohttp, aioitertools, yarl
95+
ujson==3.1.0 # via -r requirements/_base.txt
96+
urllib3==1.25.10 # via -r requirements/_base.txt, botocore, requests
8497
wcwidth==0.2.5 # via pytest
85-
websocket-client==0.57.0 # via -r requirements/_base.txt, blackfynn
98+
websocket-client==0.57.0 # via -r requirements/_base.txt, blackfynn, docker, docker-compose
8699
werkzeug==1.0.1 # via -r requirements/_base.txt
87100
wrapt==1.12.1 # via -r requirements/_base.txt, aiobotocore, astroid, deprecated
88-
yarl==1.4.2 # via -r requirements/_base.txt, aiohttp
101+
yarl==1.5.1 # via -r requirements/_base.txt, aiohttp
89102
zipp==3.1.0 # via -r requirements/_base.txt, importlib-metadata
90103

91104
# The following packages are considered to be unsafe in a requirements file:

tests/e2e/README.md

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,32 @@
1+
2+
**WARNING**: Be aware that running these tests in your host might risk changing some
3+
configuration.
4+
15
## To run the tests locally
6+
7+
Setting up the test
8+
29
```bash
10+
/bin/bash ci/github/system-testing/e2e.bash clean_up
11+
docker volume prune
12+
/bin/bash ci/github/system-testing/e2e.bash install
13+
```
14+
15+
Run the test
16+
```bash
17+
/bin/bash ci/github/system-testing/e2e.bash test
18+
# or
319
cd tests/e2e
4-
npm install
520
npm test
6-
# or
721
npm run tutorials -- http://127.0.0.1:9081 --demo
22+
23+
```
24+
25+
Trying to cleanup
26+
```bash
27+
/bin/bash ci/github/system-testing/e2e.bash clean_up
828
```
29+
930
## To debug the tests locally with VSCode
1031
Add the following configuration to your local ``launch.json``:
1132
```json
@@ -27,6 +48,7 @@ Add the following configuration to your local ``launch.json``:
2748
}
2849
```
2950
Now you can run the tests by clicking on the Play button, using that configuration. It should allow you to insert breakpoints and inspect variables.
51+
3052
## To run the tutorials
3153
```bash
3254
cd tests/e2e

tests/e2e/requirements/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ VENV_DIR ?= $(realpath $(ROOT_DIR)/.venv)
66
.PHONY: reqs
77
requirements.txt: requirements.in
88
# pip compiling $<
9-
@$(VENV_DIR)/bin/pip-compile --output-file $@ $<
9+
@$(VENV_DIR)/bin/pip-compile --upgrade --build-isolation --output-file $@ $<
1010

1111
reqs: requirements.txt ## alias to compile requirements.txt
1212

tests/e2e/requirements/requirements.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
#
55
# pip-compile --output-file=requirements.txt requirements.in
66
#
7-
certifi==2019.11.28 # via requests
7+
certifi==2020.6.20 # via requests
88
chardet==3.0.4 # via requests
9-
docker==4.2.0 # via -r requirements.in
10-
idna==2.9 # via requests
11-
pyyaml==5.3 # via -r requirements.in
12-
requests==2.23.0 # via docker
13-
six==1.14.0 # via docker, tenacity, websocket-client
14-
tenacity==6.1.0 # via -r requirements.in
15-
urllib3==1.25.8 # via requests
9+
docker==4.3.0 # via -r requirements.in
10+
idna==2.10 # via requests
11+
pyyaml==5.3.1 # via -r requirements.in
12+
requests==2.24.0 # via docker
13+
six==1.15.0 # via docker, tenacity, websocket-client
14+
tenacity==6.2.0 # via -r requirements.in
15+
urllib3==1.25.10 # via requests
1616
websocket-client==0.57.0 # via docker

tests/e2e/utils/auto.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ async function logOut(page) {
3838

3939
await page.waitForSelector('[osparc-test-id="userMenuMainBtn"]', {
4040
visible: true,
41-
timeout: 1000
41+
timeout: 2000
4242
});
4343
await utils.waitAndClick(page, '[osparc-test-id="userMenuMainBtn"]');
4444
await utils.waitAndClick(page, '[osparc-test-id="userMenuLogoutBtn"]');

tests/e2e/utils/utils.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,9 @@ async function waitForValidOutputFile(page) {
173173
}
174174

175175
async function waitAndClick(page, id) {
176-
await page.waitForSelector(id);
176+
await page.waitForSelector(id, {
177+
timeout: 30000 // default 30s
178+
});
177179
await page.click(id);
178180
}
179181

0 commit comments

Comments
 (0)