Skip to content

Commit 5098583

Browse files
author
Pedro Crespo
committed
Adapted configurations to latest schema.
Added environs to docker-compose and removed from .env-devel hosts and ports (should be hard-coded in docker-compose)
1 parent cff674b commit 5098583

13 files changed

+167
-132
lines changed

.env-devel

-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ POSTGRES_ENDPOINT=postgres:5432
1010
POSTGRES_USER=simcore
1111
POSTGRES_PASSWORD=simcore
1212
POSTGRES_DB=simcoredb
13-
POSTGRES_HOST=postgres
14-
POSTGRES_PORT=5432
1513
RABBITMQ_USER=simcore
1614
RABBITMQ_PASSWORD=simcore
1715
RABBITMQ_PROGRESS_CHANNEL=comp.backend.channels.progress

services/docker-compose.yml

+8-6
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ services:
2929
- POSTGRES_USER=${POSTGRES_USER}
3030
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
3131
- POSTGRES_DB=${POSTGRES_DB}
32-
- POSTGRES_HOST=${POSTGRES_HOST}
33-
- POSTGRES_PORT=${POSTGRES_PORT}
32+
- POSTGRES_HOST=postgres
33+
- POSTGRES_PORT=5432
3434
- S3_ENDPOINT=${S3_ENDPOINT}
3535
- S3_ACCESS_KEY=${S3_ACCESS_KEY}
3636
- S3_SECRET_KEY=${S3_SECRET_KEY}
@@ -55,15 +55,17 @@ services:
5555
ports:
5656
- '9081:8080'
5757
environment:
58+
- APIHUB_HOST=apihub
59+
- APIHUB_PORT=8043
5860
- DIRECTOR_HOST=director
5961
- DIRECTOR_PORT=8001
6062
- OSPARC_PUBLIC_URL=${OSPARC_PUBLIC_URL}
6163
- POSTGRES_ENDPOINT=${POSTGRES_ENDPOINT}
6264
- POSTGRES_USER=${POSTGRES_USER}
6365
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
6466
- POSTGRES_DB=${POSTGRES_DB}
65-
- POSTGRES_HOST=${POSTGRES_HOST}
66-
- POSTGRES_PORT=${POSTGRES_PORT}
67+
- POSTGRES_HOST=postgres
68+
- POSTGRES_PORT=5432
6769
- RABBITMQ_USER=${RABBITMQ_USER}
6870
- RABBITMQ_PASSWORD=${RABBITMQ_PASSWORD}
6971
- RABBITMQ_PROGRESS_CHANNEL=${RABBITMQ_PROGRESS_CHANNEL}
@@ -119,8 +121,8 @@ services:
119121
- POSTGRES_USER=${POSTGRES_USER}
120122
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
121123
- POSTGRES_DB=${POSTGRES_DB}
122-
- POSTGRES_HOST=${POSTGRES_HOST}
123-
- POSTGRES_PORT=${POSTGRES_PORT}
124+
- POSTGRES_HOST=postgres
125+
- POSTGRES_PORT=5432
124126
- S3_ENDPOINT=${S3_ENDPOINT}
125127
- S3_ACCESS_KEY=${S3_ACCESS_KEY}
126128
- S3_SECRET_KEY=${S3_SECRET_KEY}

services/web/server/src/simcore_service_webserver/application_config.py

+14-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
""" app's configuration
22
3+
This module loads the schema defined by every subsystem and injects it in the
4+
application's configuration scheams
5+
6+
It was designed in a similar fashion to the setup protocol of the application
7+
where every subsystem is imported and queried in a specific order. The application
8+
depends on the subsystem and not the other way around.
9+
10+
The app configuration is created before the application instance exists.
11+
312
413
TODO: add more strict checks with re
514
TODO: add support for versioning.
615
- check shema fits version
716
- parse/format version in schema
8-
TODO add simcore_sdk.config.s3 section!!!
9-
TODO: create decorator so every module injects sections in a global schema. This way we avoid cyclic dependencies
17+
TODO: add simcore_sdk.config.s3 section!!!
1018
"""
1119
import logging
1220

@@ -21,6 +29,8 @@
2129
log = logging.getLogger(__name__)
2230

2331

32+
33+
2434
def create_schema():
2535
"""
2636
Build schema for the configuration's file
@@ -33,7 +43,7 @@ def create_schema():
3343
"port": T.Int(),
3444
T.Key("public_url", optional=True): T.Or(T.String(), T.List(T.String)), # full url seen by front-end
3545
"client_outdir": T.String(),
36-
"log_level": T.Enum( list(logging._nameToLevel.keys()) ), # pylint: disable=W0212
46+
"log_level": T.Enum(*logging._nameToLevel.keys()), # pylint: disable=protected-access
3747
"testing": T.Bool(),
3848
T.Key("disable_services", default=[], optional=True): T.List(T.String()), # TODO: optional enable function in every section
3949
}),
@@ -46,7 +56,7 @@ def create_schema():
4656

4757

4858
section_names = [k.name for k in schema.keys]
49-
assert len(section_names) == set(section_names), "Found repeated section names in %s" % section_names
59+
assert len(section_names) == len(set(section_names)), "Found repeated section names in %s" % section_names
5060

5161
return schema
5262

services/web/server/src/simcore_service_webserver/config/host-dev-config.yaml

+21-16
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,20 @@ main:
77
public_url: http://localhost:8080
88
testing: true
99
disable_services: []
10-
db:
11-
init_tables: True
10+
db:
11+
init_tables: True
12+
postgres:
13+
database: simcoredb
14+
endpoint: postgres:5432
15+
host: localhost
16+
maxsize: 5
17+
minsize: 1
18+
password: simcore
19+
port: 5432
20+
user: simcore
1221
director:
1322
host: director
1423
port: 8001
15-
postgres:
16-
database: simcoredb
17-
endpoint: postgres:5432
18-
host: localhost
19-
maxsize: 5
20-
minsize: 1
21-
password: simcore
22-
port: 5432
23-
user: simcore
2424
rabbit:
2525
channels:
2626
log: comp.backend.channels.log
@@ -34,8 +34,13 @@ smtp:
3434
tls: False
3535
username: Null
3636
password: Null
37-
s3:
38-
access_key: 'Q3AM3UQ867SPQQA43P2F'
39-
bucket_name: simcore
40-
endpoint: play.minio.io:9000
41-
secret_key: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG'
37+
# s3:
38+
# access_key: 'Q3AM3UQ867SPQQA43P2F'
39+
# bucket_name: simcore
40+
# endpoint: play.minio.io:9000
41+
# secret_key: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG'
42+
rest:
43+
oas:
44+
version: v0
45+
location: ../../../../../../api/specs/webserver/v0
46+
#location: http://localhost:8043/api/specs/webserver/v0

services/web/server/src/simcore_service_webserver/config/server-defaults.yaml

+20-16
Original file line numberDiff line numberDiff line change
@@ -7,35 +7,39 @@ main:
77
public_url: http://localhost:9081
88
testing: true
99
disable_services: []
10-
db:
11-
init_tables: False
1210
director:
1311
host: director
1412
port: 8001
15-
postgres:
16-
database: simcoredb
17-
endpoint: postgres:5432
18-
host: postgres
19-
maxsize: 5
20-
minsize: 1
21-
password: simcore
22-
port: 5432
23-
user: simcore
13+
db:
14+
init_tables: False
15+
postgres:
16+
database: simcoredb
17+
endpoint: postgres:5432
18+
host: postgres
19+
maxsize: 5
20+
minsize: 1
21+
password: simcore
22+
port: 5432
23+
user: simcore
2424
rabbit:
2525
channels:
2626
log: comp.backend.channels.log
2727
progress: comp.backend.channels.progress
2828
password: simcore
2929
user: simcore
30-
s3:
31-
access_key: 'Q3AM3UQ867SPQQA43P2F'
32-
bucket_name: simcore
33-
endpoint: play.minio.io:9000
34-
secret_key: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG'
30+
# s3:
31+
# access_key: 'Q3AM3UQ867SPQQA43P2F'
32+
# bucket_name: simcore
33+
# endpoint: play.minio.io:9000
34+
# secret_key: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG'
3535
smtp:
3636
sender: 'OSPARC support <[email protected]>'
3737
host: mail.foo.com
3838
port: 25
3939
tls: False
4040
username: Null
4141
password: Null
42+
rest:
43+
oas:
44+
version: v0
45+
location: http://localhost:8043/api/specs/webserver/v0

services/web/server/src/simcore_service_webserver/config/server-docker-dev.yaml

+18-14
Original file line numberDiff line numberDiff line change
@@ -9,34 +9,38 @@ main:
99
log_level: DEBUG
1010
testing: True
1111
# disable_services: [director, postgres, rabbit, s3]
12-
db:
13-
init_tables: True
1412
director:
1513
host: ${DIRECTOR_HOST}
1614
port: ${DIRECTOR_PORT}
17-
postgres:
18-
database: ${POSTGRES_DB}
19-
endpoint: ${POSTGRES_ENDPOINT}
20-
user: ${POSTGRES_USER}
21-
password: ${POSTGRES_PASSWORD}
22-
host: postgres
23-
port: 5432
15+
db:
16+
init_tables: True
17+
postgres:
18+
database: ${POSTGRES_DB}
19+
endpoint: ${POSTGRES_ENDPOINT}
20+
user: ${POSTGRES_USER}
21+
password: ${POSTGRES_PASSWORD}
22+
host: postgres
23+
port: 5432
2424
rabbit:
2525
user: ${RABBITMQ_USER}
2626
password: ${RABBITMQ_PASSWORD}
2727
channels:
2828
progress: ${RABBITMQ_PROGRESS_CHANNEL}
2929
log: ${RABBITMQ_LOG_CHANNEL}
30-
s3:
31-
endpoint: ${S3_ENDPOINT}
32-
access_key: ${S3_ACCESS_KEY}
33-
secret_key: ${S3_SECRET_KEY}
34-
bucket_name: ${S3_BUCKET_NAME}
30+
# s3:
31+
# endpoint: ${S3_ENDPOINT}
32+
# access_key: ${S3_ACCESS_KEY}
33+
# secret_key: ${S3_SECRET_KEY}
34+
# bucket_name: ${S3_BUCKET_NAME}
3535
smtp:
3636
sender: 'OSPARC support <[email protected]>'
3737
host: ${SMTP_HOST}
3838
port: ${SMTP_PORT}
3939
tls: False
4040
username: Null
4141
password: Null
42+
rest:
43+
oas:
44+
version: v0
45+
location: http://${APIHUB_HOST}:${APIHUB_PORT}/api/specs/webserver/v0
4246
...

services/web/server/src/simcore_service_webserver/config/server-docker-prod.yaml

+18-14
Original file line numberDiff line numberDiff line change
@@ -8,34 +8,38 @@ main:
88
client_outdir: ${SIMCORE_WEB_OUTDIR}
99
log_level: INFO
1010
testing: False
11-
db:
12-
init_tables: True
1311
director:
1412
host: ${DIRECTOR_HOST}
1513
port: ${DIRECTOR_PORT}
16-
postgres:
17-
database: ${POSTGRES_DB}
18-
endpoint: ${POSTGRES_ENDPOINT}
19-
user: ${POSTGRES_USER}
20-
password: ${POSTGRES_PASSWORD}
21-
host: ${POSTGRES_HOST}
22-
port: ${POSTGRES_PORT}
14+
db:
15+
init_tables: True
16+
postgres:
17+
database: ${POSTGRES_DB}
18+
endpoint: ${POSTGRES_ENDPOINT}
19+
user: ${POSTGRES_USER}
20+
password: ${POSTGRES_PASSWORD}
21+
host: ${POSTGRES_HOST}
22+
port: ${POSTGRES_PORT}
2323
rabbit:
2424
user: ${RABBITMQ_USER}
2525
password: ${RABBITMQ_PASSWORD}
2626
channels:
2727
progress: ${RABBITMQ_PROGRESS_CHANNEL}
2828
log: ${RABBITMQ_LOG_CHANNEL}
29-
s3:
30-
endpoint: ${S3_ENDPOINT}
31-
access_key: ${S3_ACCESS_KEY}
32-
secret_key: ${S3_SECRET_KEY}
33-
bucket_name: ${S3_BUCKET_NAME}
29+
# s3:
30+
# endpoint: ${S3_ENDPOINT}
31+
# access_key: ${S3_ACCESS_KEY}
32+
# secret_key: ${S3_SECRET_KEY}
33+
# bucket_name: ${S3_BUCKET_NAME}
3434
smtp:
3535
sender: 'OSPARC support <[email protected]>'
3636
host: ${SMTP_HOST}
3737
port: ${SMTP_PORT}
3838
tls: False
3939
username: Null
4040
password: Null
41+
rest:
42+
oas:
43+
version: v0
44+
location: http://${APIHUB_HOST}:${APIHUB_PORT}/api/specs/webserver/v0
4145
...

services/web/server/src/simcore_service_webserver/config/server-template.yaml

+19-14
Original file line numberDiff line numberDiff line change
@@ -9,31 +9,36 @@ main:
99
director:
1010
host: ${DIRECTOR_HOST}
1111
port: ${DIRECTOR_PORT}
12-
postgres:
13-
database: ${POSTGRES_DB}
14-
user: ${POSTGRES_USER}
15-
password: ${POSTGRES_PASSWORD}
16-
host: localhost
17-
port: 5432
18-
minsize: 1
19-
maxsize: 5
20-
endpoint: ${POSTGRES_ENDPOINT}
12+
db:
13+
postgres:
14+
database: ${POSTGRES_DB}
15+
user: ${POSTGRES_USER}
16+
password: ${POSTGRES_PASSWORD}
17+
host: localhost
18+
port: 5432
19+
minsize: 1
20+
maxsize: 5
21+
endpoint: ${POSTGRES_ENDPOINT}
2122
rabbit:
2223
user: ${RABBITMQ_USER}
2324
password: ${RABBITMQ_PASSWORD}
2425
channels:
2526
progress: ${RABBITMQ_PROGRESS_CHANNEL}
2627
log: ${RABBITMQ_LOG_CHANNEL}
27-
s3:
28-
endpoint: ${S3_ENDPOINT}
29-
access_key: ${S3_ACCESS_KEY}
30-
secret_key: ${S3_SECRET_KEY}
31-
bucket_name: ${S3_BUCKET_NAME}
28+
# s3:
29+
# endpoint: ${S3_ENDPOINT}
30+
# access_key: ${S3_ACCESS_KEY}
31+
# secret_key: ${S3_SECRET_KEY}
32+
# bucket_name: ${S3_BUCKET_NAME}
3233
smtp:
3334
sender: 'OSPARC support <[email protected]>'
3435
host: ${SMTP_HOST}
3536
port: ${SMTP_PORT}
3637
tls: False
3738
username: Null
3839
password: Null
40+
rest:
41+
oas:
42+
version: v0
43+
location: http://${APIHUB_HOST}:${APIHUB_PORT}/api/specs/webserver/v0
3944
...

services/web/server/src/simcore_service_webserver/rest_config.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111

1212
schema = T.Dict({
13-
"openapi_spec": T.Dict({
13+
"oas": T.Dict({
1414
"version": T.String, # TODO: v0, v1, etc
1515
"location": T.Or(T.String, T.URL) # either path or url should contain version in it
1616
})

0 commit comments

Comments
 (0)