diff --git a/Dockerfile b/Dockerfile index 1199df7..6e34591 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,6 +27,6 @@ RUN apt update && \ RUN poetry install --no-root --no-dev -vvv -#RUN pip install --no-cache-dir b2m.core b2m.client b2m.ingestion.executor b2m.dataframe.csv b2m.dataframe.excel b2m.datasource.s3 b2m.datasource.sql b2m.api b2m.ml.automl b2m.mljar.supervised b2m.ml.bigdata -i http://odin:asgard_2021.@3.67.172.47/simple/ --trusted-host 3.67.172.47 +#RUN pip install --no-cache-dir b2m.shared_kernel b2m.client b2m.ingestion.executor b2m.dataframe.csv b2m.dataframe.excel b2m.datasource.s3 b2m.datasource.sql b2m.api b2m.ml.automl b2m.mljar.supervised b2m.ml.bigdata -i http://odin:asgard_2021.@3.67.172.47/simple/ --trusted-host 3.67.172.47 WORKDIR /opt/search diff --git a/src/recommendation_engine/app/core/__init__.py b/src/recommendation_engine/__init__.py similarity index 100% rename from src/recommendation_engine/app/core/__init__.py rename to src/recommendation_engine/__init__.py diff --git a/src/recommendation_engine/app/features/comments/db/model.py b/src/recommendation_engine/app/features/comments/db/model.py index 2eafba4..74d6bf9 100644 --- a/src/recommendation_engine/app/features/comments/db/model.py +++ b/src/recommendation_engine/app/features/comments/db/model.py @@ -2,7 +2,7 @@ from clickhouse_sqlalchemy import engines from sqlalchemy import Column, Integer, String, DateTime, Array -from ....core.database.clickhouse import ClickhouseBase +from ....shared_kernel.database.clickhouse import ClickhouseBase class CommentsModel(ClickhouseBase): diff --git a/src/recommendation_engine/app/features/comments/domain/entity/getir.py b/src/recommendation_engine/app/features/comments/domain/entity/getir.py index d53c735..2fe3aca 100644 --- a/src/recommendation_engine/app/features/comments/domain/entity/getir.py +++ b/src/recommendation_engine/app/features/comments/domain/entity/getir.py @@ -1,11 +1,11 @@ from loguru import logger from typing import Generator -from ....entity import BaseEntity -from ....request import RequestValue -from ....value_stack import EntityValueStack from ..values.getir import GetirCommentValue -from ....processor import Processor, SyncCallParams +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.request import RequestValue +from .....shared_kernel.value_stack import EntityValueStack +from .....shared_kernel.processor import Processor, SyncCallParams class GetirComments(BaseEntity, Processor): diff --git a/src/recommendation_engine/app/features/comments/domain/entity/yemek_sepeti.py b/src/recommendation_engine/app/features/comments/domain/entity/yemek_sepeti.py index f92bb20..cd7f172 100644 --- a/src/recommendation_engine/app/features/comments/domain/entity/yemek_sepeti.py +++ b/src/recommendation_engine/app/features/comments/domain/entity/yemek_sepeti.py @@ -1,11 +1,11 @@ from loguru import logger from typing import Generator -from ....entity import BaseEntity -from ....request import RequestValue -from ....value_stack import EntityValueStack -from ....processor import Processor, SyncCallParams +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.request import RequestValue from ..values.yemeksepeti import YemeksepetiCommentValue +from .....shared_kernel.value_stack import EntityValueStack +from .....shared_kernel.processor import Processor, SyncCallParams class YemekSepetiComments(BaseEntity, Processor): diff --git a/src/recommendation_engine/app/features/comments/domain/values/comment.py b/src/recommendation_engine/app/features/comments/domain/values/comment.py index c5d661d..95ca42e 100644 --- a/src/recommendation_engine/app/features/comments/domain/values/comment.py +++ b/src/recommendation_engine/app/features/comments/domain/values/comment.py @@ -1,5 +1,5 @@ from dataclasses import dataclass -from ....mixins import DataclassValidationMixin +from recommendation_engine.app.shared_kernel.mixins import DataclassValidationMixin @dataclass(frozen=True) diff --git a/src/recommendation_engine/app/features/menu/db/models.py b/src/recommendation_engine/app/features/menu/db/models.py index 9adf820..6acaa26 100644 --- a/src/recommendation_engine/app/features/menu/db/models.py +++ b/src/recommendation_engine/app/features/menu/db/models.py @@ -1,7 +1,7 @@ from clickhouse_sqlalchemy import engines from sqlalchemy import Column, String, Float -from ....core.database.clickhouse import ClickhouseBase +from ....shared_kernel.database.clickhouse import ClickhouseBase class MenuModel(ClickhouseBase): diff --git a/src/recommendation_engine/app/features/menu/domain/entity/getir.py b/src/recommendation_engine/app/features/menu/domain/entity/getir.py index e5c4754..6f2eef7 100644 --- a/src/recommendation_engine/app/features/menu/domain/entity/getir.py +++ b/src/recommendation_engine/app/features/menu/domain/entity/getir.py @@ -1,10 +1,10 @@ from loguru import logger -from ....entity import BaseEntity -from ....request import RequestValue from ..values.getir import GetirMenuValue -from ....value_stack import EntityValueStack -from ....processor import Processor, SyncCallParams +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.request import RequestValue +from .....shared_kernel.value_stack import EntityValueStack +from .....shared_kernel.processor import Processor, SyncCallParams class GetirMenu(BaseEntity, Processor): diff --git a/src/recommendation_engine/app/features/menu/domain/entity/yemeksepeti.py b/src/recommendation_engine/app/features/menu/domain/entity/yemeksepeti.py index 51c1521..e387ee9 100644 --- a/src/recommendation_engine/app/features/menu/domain/entity/yemeksepeti.py +++ b/src/recommendation_engine/app/features/menu/domain/entity/yemeksepeti.py @@ -1,11 +1,11 @@ from loguru import logger from ..values import GeoValue -from ....entity import BaseEntity -from ....request import RequestValue -from ....value_stack import EntityValueStack -from ....processor import Processor, SyncCallParams +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.request import RequestValue from ..values.yemeksepeti.menu import YemeksepetiMenuValue +from .....shared_kernel.value_stack import EntityValueStack +from .....shared_kernel.processor import Processor, SyncCallParams class YemeksepetiMenu(BaseEntity, Processor): diff --git a/src/recommendation_engine/app/features/menu/domain/values/menu.py b/src/recommendation_engine/app/features/menu/domain/values/menu.py index de02b3d..86f7f6b 100644 --- a/src/recommendation_engine/app/features/menu/domain/values/menu.py +++ b/src/recommendation_engine/app/features/menu/domain/values/menu.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -from ....mixins import DataclassValidationMixin +from recommendation_engine.app.shared_kernel.mixins import DataclassValidationMixin @dataclass(frozen=True) diff --git a/src/recommendation_engine/app/features/restaurants/db/models.py b/src/recommendation_engine/app/features/restaurants/db/models.py index 4b2b8fd..1767d79 100644 --- a/src/recommendation_engine/app/features/restaurants/db/models.py +++ b/src/recommendation_engine/app/features/restaurants/db/models.py @@ -1,7 +1,7 @@ from clickhouse_sqlalchemy import engines from sqlalchemy import Column, String, Float, Integer -from ....core.database.clickhouse import ClickhouseBase +from ....shared_kernel.database.clickhouse import ClickhouseBase class RestaurantModel(ClickhouseBase): diff --git a/src/recommendation_engine/app/features/restaurants/domain/entity/getir.py b/src/recommendation_engine/app/features/restaurants/domain/entity/getir.py index ec42351..0ef4779 100644 --- a/src/recommendation_engine/app/features/restaurants/domain/entity/getir.py +++ b/src/recommendation_engine/app/features/restaurants/domain/entity/getir.py @@ -2,12 +2,12 @@ from typing import Generator from ..values import GeoValue -from ....entity import BaseEntity -from ....processor import Processor -from ....request import RequestValue -from ....processor import SyncCallParams -from ....value_stack import EntityValueStack from ..values.getir import GetirRestaurantValue +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.processor import Processor +from .....shared_kernel.request import RequestValue +from .....shared_kernel.processor import SyncCallParams +from .....shared_kernel.value_stack import EntityValueStack class GetirRestaurants(BaseEntity, Processor): diff --git a/src/recommendation_engine/app/features/restaurants/domain/entity/yemek_sepeti.py b/src/recommendation_engine/app/features/restaurants/domain/entity/yemek_sepeti.py index f4bfdd8..d85728a 100644 --- a/src/recommendation_engine/app/features/restaurants/domain/entity/yemek_sepeti.py +++ b/src/recommendation_engine/app/features/restaurants/domain/entity/yemek_sepeti.py @@ -2,11 +2,11 @@ from typing import Generator from ..values import GeoValue -from ....entity import BaseEntity -from ....processor import Processor -from ....request import RequestValue -from ....processor import SyncCallParams -from ....value_stack import EntityValueStack +from .....shared_kernel.entity import BaseEntity +from .....shared_kernel.processor import Processor +from .....shared_kernel.request import RequestValue +from .....shared_kernel.processor import SyncCallParams +from .....shared_kernel.value_stack import EntityValueStack from ..values.yemeksepeti import YemeksepetiRestaurantValue diff --git a/src/recommendation_engine/app/features/restaurants/domain/values/restaurant.py b/src/recommendation_engine/app/features/restaurants/domain/values/restaurant.py index 4701cbc..1561290 100644 --- a/src/recommendation_engine/app/features/restaurants/domain/values/restaurant.py +++ b/src/recommendation_engine/app/features/restaurants/domain/values/restaurant.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -from ....mixins import DataclassValidationMixin +from .....shared_kernel.mixins import DataclassValidationMixin @dataclass(frozen=True) diff --git a/src/recommendation_engine/app/core/database/__init__.py b/src/recommendation_engine/app/shared_kernel/__init__.py similarity index 100% rename from src/recommendation_engine/app/core/database/__init__.py rename to src/recommendation_engine/app/shared_kernel/__init__.py diff --git a/src/recommendation_engine/app/shared_kernel/database/__init__.py b/src/recommendation_engine/app/shared_kernel/database/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/recommendation_engine/app/core/database/clickhouse.py b/src/recommendation_engine/app/shared_kernel/database/clickhouse.py similarity index 100% rename from src/recommendation_engine/app/core/database/clickhouse.py rename to src/recommendation_engine/app/shared_kernel/database/clickhouse.py diff --git a/src/recommendation_engine/app/features/entity.py b/src/recommendation_engine/app/shared_kernel/entity.py similarity index 100% rename from src/recommendation_engine/app/features/entity.py rename to src/recommendation_engine/app/shared_kernel/entity.py diff --git a/src/recommendation_engine/app/features/mixins.py b/src/recommendation_engine/app/shared_kernel/mixins.py similarity index 100% rename from src/recommendation_engine/app/features/mixins.py rename to src/recommendation_engine/app/shared_kernel/mixins.py diff --git a/src/recommendation_engine/app/features/processor.py b/src/recommendation_engine/app/shared_kernel/processor.py similarity index 89% rename from src/recommendation_engine/app/features/processor.py rename to src/recommendation_engine/app/shared_kernel/processor.py index c19a3f1..cb47f46 100644 --- a/src/recommendation_engine/app/features/processor.py +++ b/src/recommendation_engine/app/shared_kernel/processor.py @@ -13,9 +13,9 @@ from typing import TypeVar, List, Literal from pydantic import BaseModel, Field, AnyUrl -from .menu.domain.values import MenuValue -from .comments.domain.values import CommentValue -from .restaurants.domain.values import RestaurantValue +from recommendation_engine.app.features.menu.domain.values import MenuValue +from recommendation_engine.app.features.comments.domain.values import CommentValue +from recommendation_engine.app.features.restaurants.domain.values import RestaurantValue T = TypeVar("T", *[List[RestaurantValue], List[CommentValue], List[MenuValue]]) diff --git a/src/recommendation_engine/app/features/request.py b/src/recommendation_engine/app/shared_kernel/request.py similarity index 100% rename from src/recommendation_engine/app/features/request.py rename to src/recommendation_engine/app/shared_kernel/request.py diff --git a/src/recommendation_engine/app/features/value_stack.py b/src/recommendation_engine/app/shared_kernel/value_stack.py similarity index 63% rename from src/recommendation_engine/app/features/value_stack.py rename to src/recommendation_engine/app/shared_kernel/value_stack.py index aad87a8..0c3d8bf 100644 --- a/src/recommendation_engine/app/features/value_stack.py +++ b/src/recommendation_engine/app/shared_kernel/value_stack.py @@ -1,8 +1,8 @@ from typing import TypeVar -from .menu.domain.values import MenuValue -from .comments.domain.values import CommentValue -from .restaurants.domain.values import RestaurantValue +from recommendation_engine.app.features.menu.domain.values import MenuValue +from recommendation_engine.app.features.comments.domain.values import CommentValue +from recommendation_engine.app.features.restaurants.domain.values import RestaurantValue Z = TypeVar("Z", RestaurantValue, CommentValue, MenuValue) diff --git a/src/recommendation_engine/app/tasks/__init__.py b/src/recommendation_engine/app/tasks/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/app/domain/restaurants/test_restaurant_mapper.py b/tests/app/domain/restaurants/test_restaurant_mapper.py index 9f0446e..094945a 100644 --- a/tests/app/domain/restaurants/test_restaurant_mapper.py +++ b/tests/app/domain/restaurants/test_restaurant_mapper.py @@ -8,7 +8,7 @@ GetirRestaurantValue, ) from src.recommendation_engine.app.features.restaurants.domain.values.yemeksepeti import ( - YemeksepetiRestaurantValue + YemeksepetiRestaurantValue, ) @@ -42,8 +42,10 @@ def test_yemeksepeti_mapper(): minimum_delivery_fee=1, minimum_delivery_time=1, original_delivery_fee=1, - loyalty_percentage_amount=1 + loyalty_percentage_amount=1, ) - res = RestaurantMapper.yemeksepeti_restaurant_to_dto(value_object=yemeksepeti_domain_value) + res = RestaurantMapper.yemeksepeti_restaurant_to_dto( + value_object=yemeksepeti_domain_value + ) assert isinstance(res, RestaurantDto)