diff --git a/apis/db/psql/conn.py b/apis/db/psql/conn.py deleted file mode 100644 index 0be7464..0000000 --- a/apis/db/psql/conn.py +++ /dev/null @@ -1,33 +0,0 @@ -import psycopg2 -import docker -from docker.models.containers import Container -from typing import Tuple - - -def get_connection(): - container = get_docker_container_by_name('pg-docker') - ip_address, port = get_network_settings_from_container(container) - conn = psycopg2.connect(dbname='evs', - user='postgres', - password='docker', - host=ip_address, - port=port) - return conn - - -def get_docker_container_by_name(name: str) -> Container: - client = docker.from_env() - container_list = client.containers.list(filters={'name': name}) - assert len(container_list) == 1, f'Could not find Docker container with name: {name}' - return container_list[0] - - -def get_network_settings_from_container(container: Container) -> Tuple[str, int]: - settings = container.attrs['NetworkSettings'] - ip_address = settings['IPAddress'] - - ports = list(settings['Ports'].keys()) - assert len(ports) == 1, f'Found multiple ports in Docker container: {container.name}' - port = int(ports[0].split('/')[0]) # '5432/tcp' -> 5432 - - return ip_address, port diff --git a/apis/db/requirements.txt b/apis/db/requirements.txt index e9a70fb..0be4042 100644 --- a/apis/db/requirements.txt +++ b/apis/db/requirements.txt @@ -1,4 +1,5 @@ flask flask-cors -psycopg2-binary -docker \ No newline at end of file +gunicorn +psycopg2 +requests diff --git a/apis/db/run.sh b/apis/db/run.sh index 20193cf..bd6e56c 100755 --- a/apis/db/run.sh +++ b/apis/db/run.sh @@ -1,2 +1,2 @@ #!/bin/bash -gunicorn -b 127.0.0.1:8001 app:app +gunicorn -b 127.0.0.1:8001 --chdir src app:app diff --git a/apis/db/app.py b/apis/db/src/app.py similarity index 100% rename from apis/db/app.py rename to apis/db/src/app.py diff --git a/apis/db/psql/__init__.py b/apis/db/src/psql/__init__.py similarity index 100% rename from apis/db/psql/__init__.py rename to apis/db/src/psql/__init__.py diff --git a/apis/db/psql/account.py b/apis/db/src/psql/account.py similarity index 100% rename from apis/db/psql/account.py rename to apis/db/src/psql/account.py diff --git a/apis/db/psql/balance.py b/apis/db/src/psql/balance.py similarity index 100% rename from apis/db/psql/balance.py rename to apis/db/src/psql/balance.py diff --git a/apis/db/psql/command.py b/apis/db/src/psql/command.py similarity index 100% rename from apis/db/psql/command.py rename to apis/db/src/psql/command.py diff --git a/apis/db/src/psql/conn.py b/apis/db/src/psql/conn.py new file mode 100644 index 0000000..013a31f --- /dev/null +++ b/apis/db/src/psql/conn.py @@ -0,0 +1,15 @@ +import os +import psycopg2 +from typing import Tuple + +DB_HOST = os.environ.get('DB_HOST', '127.0.0.1') +DB_PORT = os.environ.get('DB_PORT', 5432) + + +def get_connection(): + conn = psycopg2.connect(dbname='evs', + user='postgres', + password='docker', + host=DB_HOST, + port=DB_PORT) + return conn diff --git a/apis/db/psql/exec.py b/apis/db/src/psql/exec.py similarity index 100% rename from apis/db/psql/exec.py rename to apis/db/src/psql/exec.py diff --git a/apis/db/psql/notification.py b/apis/db/src/psql/notification.py similarity index 100% rename from apis/db/psql/notification.py rename to apis/db/src/psql/notification.py diff --git a/apis/db/psql/subscription.py b/apis/db/src/psql/subscription.py similarity index 100% rename from apis/db/psql/subscription.py rename to apis/db/src/psql/subscription.py diff --git a/apis/db/psql/web.py b/apis/db/src/psql/web.py similarity index 76% rename from apis/db/psql/web.py rename to apis/db/src/psql/web.py index 624f25d..c599d29 100644 --- a/apis/db/psql/web.py +++ b/apis/db/src/psql/web.py @@ -1,8 +1,9 @@ import json +import os import requests -WEB_API_HOST = 'localhost' -WEB_API_PORT = 5000 +WEB_API_HOST = os.environ.get('WEB_API_HOST', 'localhost') +WEB_API_PORT = os.environ.get('WEB_API_PORT', 5000) def get_amount(username: str, password: str) -> float: