Skip to content

Commit 61e545f

Browse files
authored
Merge pull request #1104 from cmu-delphi/rzatserkovnyi/common-package
Add support for src/common directory
2 parents bf62161 + 097e653 commit 61e545f

21 files changed

+38
-137
lines changed

.github/workflows/ci.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,13 @@ jobs:
5757
docker build -t delphi_web_epidata -f ./devops/Dockerfile .
5858
cd ../../../
5959
60+
# MODULE_NAME specifies the location of the `app` variable, the actual WSGI application object to run.
61+
# see https://github.com/tiangolo/meinheld-gunicorn-docker#module_name
6062
- name: Start services
6163
run: |
6264
docker network create --driver bridge delphi-net
6365
docker run --rm -d -p 13306:3306 --network delphi-net --name delphi_database_epidata --cap-add=sys_nice delphi_database_epidata
64-
docker run --rm -d -p 10080:80 --env "SQLALCHEMY_DATABASE_URI=mysql+mysqldb://user:pass@delphi_database_epidata:3306/epidata" --env "FLASK_SECRET=abc" --env "FLASK_PREFIX=/epidata" --network delphi-net --name delphi_web_epidata delphi_web_epidata
66+
docker run --rm -d -p 10080:80 --env "MODULE_NAME=delphi.epidata.server.main" --env "SQLALCHEMY_DATABASE_URI=mysql+mysqldb://user:pass@delphi_database_epidata:3306/epidata" --env "FLASK_SECRET=abc" --env "FLASK_PREFIX=/epidata" --network delphi-net --name delphi_web_epidata delphi_web_epidata
6567
docker ps
6668
6769
- run: |

deploy.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,15 @@
1717
"add-header-comment": true
1818
},
1919

20+
"// common",
21+
{
22+
"type": "move",
23+
"src": "src/common/",
24+
"dst": "[[package]]/common/",
25+
"match": "^.*\\.(py)$",
26+
"add-header-comment": true
27+
},
28+
2029
"// server",
2130
{
2231
"type": "move",
@@ -47,15 +56,6 @@
4756
"add-header-comment": true
4857
},
4958

50-
"// acquisition - common",
51-
{
52-
"type": "move",
53-
"src": "src/acquisition/common/",
54-
"dst": "[[package]]/acquisition/common/",
55-
"match": "^.*\\.(py)$",
56-
"add-header-comment": true
57-
},
58-
5959
"// acquisition - fluview",
6060
{
6161
"type": "move",

dev/local/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,11 @@ web:
9191
cd -
9292

9393
@# Run the web server
94+
@# MODULE_NAME specifies the location of the `app` variable, the actual WSGI application object to run.
95+
@# see https://github.com/tiangolo/meinheld-gunicorn-docker#module_name
9496
@docker run --rm -p 127.0.0.1:10080:80 \
9597
$(M1) \
98+
--env "MODULE_NAME=delphi.epidata.server.main" \
9699
--env "SQLALCHEMY_DATABASE_URI=$(sqlalchemy_uri)" \
97100
--env "FLASK_SECRET=abc" --env "FLASK_PREFIX=/epidata" --env "LOG_DEBUG" \
98101
--network delphi-net --name delphi_web_epidata \

devops/Dockerfile

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,16 @@ LABEL org.opencontainers.image.source=https://github.com/cmu-delphi/delphi-epida
88

99
COPY ./devops/gunicorn_conf.py /app
1010
COPY ./devops/start_wrapper.sh /
11-
COPY ./src/server/ /app/app/
12-
COPY --from=builder ./src/build/lib/ /app/app/lib/
11+
RUN mkdir -p /app/delphi/epidata
12+
COPY ./src/server /app/delphi/epidata/server
13+
COPY ./src/common /app/delphi/epidata/common
14+
COPY --from=builder ./src/build/lib/ /app/delphi/epidata/lib/
1315

1416
COPY requirements.api.txt /app/requirements_also.txt
1517

1618
RUN ln -s -f /usr/share/zoneinfo/America/New_York /etc/localtime \
17-
&& rm -rf /app/app/__pycache__ /app/app/*.php \
18-
&& chmod -R o+r /app/app \
19+
&& rm -rf /app/delphi/epidata/__pycache__ \
20+
&& chmod -R o+r /app/delphi/epidata \
1921
&& chmod 755 /start_wrapper.sh \
2022
&& pip install --no-cache-dir -r /tmp/requirements.txt -r requirements_also.txt
2123
# the file /tmp/requirements.txt is created in the parent docker definition. (see:

src/acquisition/common/logger.py

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

src/acquisition/covid_hosp/common/database.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
# first party
1313
import delphi.operations.secrets as secrets
14-
from delphi.epidata.acquisition.common.logger import get_structured_logger
14+
from delphi.epidata.common.logger import get_structured_logger
1515

1616
Columndef = namedtuple("Columndef", "csv_name sql_name dtype")
1717

src/acquisition/covidcast/covidcast_meta_cache_updater.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
# first party
99
from delphi.epidata.acquisition.covidcast.database import Database
10-
from delphi.epidata.acquisition.common.logger import get_structured_logger
10+
from delphi.epidata.common.logger import get_structured_logger
1111
from delphi.epidata.client.delphi_epidata import Epidata
1212

1313
def get_argument_parser():

src/acquisition/covidcast/csv_importer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
# first party
1616
from delphi_utils import Nans
1717
from delphi.utils.epiweek import delta_epiweeks
18-
from delphi.epidata.acquisition.covidcast.covidcast_row import CovidcastRow
19-
from delphi.epidata.acquisition.common.logger import get_structured_logger
18+
from delphi.epidata.common.covidcast_row import CovidcastRow
19+
from delphi.epidata.common.logger import get_structured_logger
2020

2121
DataFrameRow = NamedTuple('DFRow', [
2222
('geo_id', str),

src/acquisition/covidcast/csv_to_database.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from delphi.epidata.acquisition.covidcast.csv_importer import CsvImporter, PathDetails
1212
from delphi.epidata.acquisition.covidcast.database import Database, DBLoadStateException
1313
from delphi.epidata.acquisition.covidcast.file_archiver import FileArchiver
14-
from delphi.epidata.acquisition.common.logger import get_structured_logger
14+
from delphi.epidata.common.logger import get_structured_logger
1515

1616

1717
def get_argument_parser():

src/acquisition/covidcast/database.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414

1515
# first party
1616
import delphi.operations.secrets as secrets
17-
from delphi.epidata.acquisition.common.logger import get_structured_logger
18-
from delphi.epidata.acquisition.covidcast.covidcast_row import CovidcastRow
17+
from delphi.epidata.common.logger import get_structured_logger
18+
from delphi.epidata.common.covidcast_row import CovidcastRow
1919

2020

2121
class DBLoadStateException(Exception):

src/acquisition/covidcast/delete_batch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
# first party
1010
from delphi.epidata.acquisition.covidcast.database import Database
11-
from delphi.epidata.acquisition.common.logger import get_structured_logger
11+
from delphi.epidata.common.logger import get_structured_logger
1212

1313

1414
def get_argument_parser():

src/acquisition/covidcast/file_archiver.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import shutil
77

88
# first party
9-
from delphi.epidata.acquisition.common.logger import get_structured_logger
9+
from delphi.epidata.common.logger import get_structured_logger
1010

1111
class FileArchiver:
1212
"""Archives files by moving and compressing."""

src/acquisition/covidcast/signal_dash_data_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
# first party
1616
import covidcast
1717
import delphi.operations.secrets as secrets
18-
from delphi.epidata.acquisition.common.logger import get_structured_logger
18+
from delphi.epidata.common.logger import get_structured_logger
1919

2020

2121
LOOKBACK_DAYS_FOR_COVERAGE = 56

src/acquisition/covidcast/test_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import pandas as pd
77

88
from delphi_utils import Nans
9-
from delphi.epidata.acquisition.covidcast.covidcast_row import CovidcastRow
9+
from delphi.epidata.common.covidcast_row import CovidcastRow
1010
from delphi.epidata.acquisition.covidcast.database import Database
1111
from delphi.epidata.server.utils.dates import day_to_time_value, time_value_to_day
1212
import delphi.operations.secrets as secrets
File renamed without changes.

src/server/_common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from sqlalchemy.engine import Connection, Engine
77
from werkzeug.local import LocalProxy
88

9-
from .utils.logger import get_structured_logger
9+
from delphi.epidata.common.logger import get_structured_logger
1010
from ._config import SECRET, SQLALCHEMY_DATABASE_URI, SQLALCHEMY_ENGINE_OPTIONS
1111
from ._exceptions import DatabaseErrorException, EpiDataException
1212

src/server/_printer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
from ._config import MAX_RESULTS, MAX_COMPATIBILITY_RESULTS
1010
from ._common import is_compatibility_mode
11-
from .utils.logger import get_structured_logger
11+
from delphi.epidata.common.logger import get_structured_logger
1212

1313

1414
def print_non_standard(format: str, data):

src/server/endpoints/covidcast_meta.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from .._params import extract_strings
99
from .._printer import create_printer
1010
from .._query import filter_fields
11-
from ..utils.logger import get_structured_logger
11+
from delphi.epidata.common.logger import get_structured_logger
1212

1313
bp = Blueprint("covidcast_meta", __name__)
1414

src/server/utils/dates.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from epiweeks import Week, Year
1111
from typing_extensions import TypeAlias
1212

13-
from .logger import get_structured_logger
13+
from delphi.epidata.common.logger import get_structured_logger
1414

1515
# Alias for a sequence of date ranges (int, int) or date integers
1616
IntRange: TypeAlias = Union[Tuple[int, int], int]

tests/acquisition/covidcast/test_covidcast_row.py renamed to tests/common/test_covidcast_row.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from pandas.testing import assert_frame_equal
55

66
from delphi_utils.nancodes import Nans
7-
from delphi.epidata.acquisition.covidcast.covidcast_row import CovidcastRow, set_df_dtypes
7+
from delphi.epidata.common.covidcast_row import CovidcastRow, set_df_dtypes
88
from delphi.epidata.acquisition.covidcast.test_utils import (
99
CovidcastTestRow,
1010
covidcast_rows_as_api_compatibility_row_df,
@@ -14,7 +14,7 @@
1414
)
1515

1616
# py3tester coverage target (equivalent to `import *`)
17-
__test_target__ = 'delphi.epidata.acquisition.covidcast.covidcast_row'
17+
__test_target__ = 'delphi.epidata.common.covidcast_row'
1818

1919

2020
class TestCovidcastRows(unittest.TestCase):

0 commit comments

Comments
 (0)