From 7a766cbcf2de82ea401ede11051b1059ef97919a Mon Sep 17 00:00:00 2001 From: Jiajie Zhong Date: Thu, 28 Jul 2022 19:02:13 +0800 Subject: [PATCH] [python] Refactor structure to avoid cycle import (#11167) Currently, our core and side module dependent on each others. and will cause cycle import in our codebase, especially in issue #10905, we try to refactor to solve this problem. This patch do the following change: * Rename module `side` to `models` * Move `core/base` and `core/sidebase` to dir `modules` * Move `configuration` and `default_config.yaml` to the root of pydolphinscheduler --- .../pydolphinscheduler/DEVELOP.md | 2 +- .../pydolphinscheduler/docs/source/api.rst | 2 +- .../pydolphinscheduler/docs/source/config.rst | 2 +- .../pydolphinscheduler/setup.py | 2 +- .../src/pydolphinscheduler/cli/commands.py | 2 +- .../pydolphinscheduler/{core => }/configuration.py | 0 .../src/pydolphinscheduler/core/__init__.py | 2 +- .../pydolphinscheduler/core/process_definition.py | 13 ++++++------- .../src/pydolphinscheduler/core/resource.py | 2 +- .../src/pydolphinscheduler/core/task.py | 4 ++-- .../{core => }/default_config.yaml | 2 +- .../examples/task_dependent_example.py | 2 +- .../src/pydolphinscheduler/java_gateway.py | 2 +- .../{side => models}/__init__.py | 14 +++++++++----- .../pydolphinscheduler/{core => models}/base.py | 2 +- .../{core => models}/base_side.py | 8 ++++---- .../pydolphinscheduler/{side => models}/project.py | 4 ++-- .../pydolphinscheduler/{side => models}/queue.py | 4 ++-- .../pydolphinscheduler/{side => models}/tenant.py | 4 ++-- .../pydolphinscheduler/{side => models}/user.py | 5 ++--- .../{side => models}/worker_group.py | 2 +- .../src/pydolphinscheduler/tasks/condition.py | 2 +- .../src/pydolphinscheduler/tasks/dependent.py | 6 +++--- .../src/pydolphinscheduler/tasks/switch.py | 2 +- .../pydolphinscheduler/tests/cli/test_config.py | 2 +- .../tests/core/test_configuration.py | 4 ++-- .../tests/core/test_process_definition.py | 4 ++-- .../pydolphinscheduler/tests/testing/path.py | 2 +- 28 files changed, 52 insertions(+), 50 deletions(-) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{core => }/configuration.py (100%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{core => }/default_config.yaml (99%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/__init__.py (70%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{core => models}/base.py (98%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{core => models}/base_side.py (86%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/project.py (93%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/queue.py (93%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/tenant.py (93%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/user.py (94%) rename dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/{side => models}/worker_group.py (95%) diff --git a/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md b/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md index bdd041667..d09363ae6 100644 --- a/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md +++ b/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md @@ -34,7 +34,7 @@ Now, we should install all dependence to make sure we could run test or check co ```shell cd dolphinscheduler/dolphinscheduler-python/pydolphinscheduler -python -m pip install .[dev] +python -m pip install -e '.[dev]' ``` Next, we have to open pydolphinscheduler project in you editor. We recommend you use [pycharm][pycharm] diff --git a/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst b/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst index 8e55ea558..570e06d6e 100644 --- a/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst +++ b/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst @@ -27,7 +27,7 @@ Core Sides ----- -.. automodule:: pydolphinscheduler.side +.. automodule:: pydolphinscheduler.models :inherited-members: Tasks diff --git a/dolphinscheduler-python/pydolphinscheduler/docs/source/config.rst b/dolphinscheduler-python/pydolphinscheduler/docs/source/config.rst index feb147a92..29a143d71 100644 --- a/dolphinscheduler-python/pydolphinscheduler/docs/source/config.rst +++ b/dolphinscheduler-python/pydolphinscheduler/docs/source/config.rst @@ -200,7 +200,7 @@ All Configurations in File Here are all our configurations for pydolphinscheduler. -.. literalinclude:: ../../src/pydolphinscheduler/core/default_config.yaml +.. literalinclude:: ../../src/pydolphinscheduler/default_config.yaml :language: yaml :lines: 18- diff --git a/dolphinscheduler-python/pydolphinscheduler/setup.py b/dolphinscheduler-python/pydolphinscheduler/setup.py index e216d8d34..5a181223e 100644 --- a/dolphinscheduler-python/pydolphinscheduler/setup.py +++ b/dolphinscheduler-python/pydolphinscheduler/setup.py @@ -147,7 +147,7 @@ setup( package_dir={"": "src"}, include_package_data=True, package_data={ - "pydolphinscheduler": ["core/default_config.yaml"], + "pydolphinscheduler": ["default_config.yaml"], }, platforms=["any"], classifiers=[ diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/cli/commands.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/cli/commands.py index e2ca86b57..19f673e48 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/cli/commands.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/cli/commands.py @@ -21,7 +21,7 @@ import click from click import echo from pydolphinscheduler import __version__ -from pydolphinscheduler.core.configuration import ( +from pydolphinscheduler.configuration import ( get_single_config, init_config_file, set_single_config, diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/configuration.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/configuration.py similarity index 100% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/configuration.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/configuration.py diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/__init__.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/__init__.py index 7497d1f28..b997c3e9d 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/__init__.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/__init__.py @@ -23,8 +23,8 @@ from pydolphinscheduler.core.process_definition import ProcessDefinition from pydolphinscheduler.core.task import Task __all__ = [ + "Database", "Engine", "ProcessDefinition", "Task", - "Database", ] diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/process_definition.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/process_definition.py index dd18dafa0..31d1e6124 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/process_definition.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/process_definition.py @@ -21,12 +21,11 @@ import json from datetime import datetime from typing import Any, Dict, List, Optional, Set +from pydolphinscheduler import configuration from pydolphinscheduler.constants import TaskType -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base import Base from pydolphinscheduler.exceptions import PyDSParamException, PyDSTaskNoFoundException from pydolphinscheduler.java_gateway import launch_gateway -from pydolphinscheduler.side import Project, Tenant, User +from pydolphinscheduler.models import Base, Project, Tenant, User from pydolphinscheduler.utils.date import MAX_DATETIME, conv_from_str, conv_to_schedule @@ -170,7 +169,7 @@ class ProcessDefinition(Base): def user(self) -> User: """Get user object. - For now we just get from python side but not from java gateway side, so it may not correct. + For now we just get from python models but not from java gateway models, so it may not correct. """ return User(name=self._user, tenant=self._tenant) @@ -358,10 +357,10 @@ class ProcessDefinition(Base): self.start() def _ensure_side_model_exists(self): - """Ensure process definition side model exists. + """Ensure process definition models model exists. - For now, side object including :class:`pydolphinscheduler.side.project.Project`, - :class:`pydolphinscheduler.side.tenant.Tenant`, :class:`pydolphinscheduler.side.user.User`. + For now, models object including :class:`pydolphinscheduler.models.project.Project`, + :class:`pydolphinscheduler.models.tenant.Tenant`, :class:`pydolphinscheduler.models.user.User`. If these model not exists, would create default value in :class:`pydolphinscheduler.constants.ProcessDefinitionDefault`. """ diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/resource.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/resource.py index bd4ffd4bd..a3aab81d1 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/resource.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/resource.py @@ -19,7 +19,7 @@ from typing import Optional -from pydolphinscheduler.core.base import Base +from pydolphinscheduler.models import Base class Resource(Base): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/task.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/task.py index 90c0e8908..4d4e67e32 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/task.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/task.py @@ -20,6 +20,7 @@ from logging import getLogger from typing import Dict, List, Optional, Sequence, Set, Tuple, Union +from pydolphinscheduler import configuration from pydolphinscheduler.constants import ( Delimiter, ResourceKey, @@ -27,13 +28,12 @@ from pydolphinscheduler.constants import ( TaskPriority, TaskTimeoutFlag, ) -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base import Base from pydolphinscheduler.core.process_definition import ( ProcessDefinition, ProcessDefinitionContext, ) from pydolphinscheduler.java_gateway import launch_gateway +from pydolphinscheduler.models import Base logger = getLogger(__name__) diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/default_config.yaml b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/default_config.yaml similarity index 99% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/default_config.yaml rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/default_config.yaml index 5541af7b7..98d7b99fd 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/default_config.yaml +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/default_config.yaml @@ -22,7 +22,7 @@ java_gateway: address: 127.0.0.1 # The port of Python gateway server start. Define which port you could connect to Python gateway server from - # Python API side. + # Python API models. port: 25333 # Whether automatically convert Python objects to Java Objects. Default value is ``True``. There is some diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/examples/task_dependent_example.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/examples/task_dependent_example.py index 88d6ea232..db53bcc9f 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/examples/task_dependent_example.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/examples/task_dependent_example.py @@ -35,7 +35,7 @@ task_dependent: task_dependent(this task dependent on task_dependent_external.task_1 and task_dependent_external.task_2). """ -from pydolphinscheduler.core import configuration +from pydolphinscheduler import configuration from pydolphinscheduler.core.process_definition import ProcessDefinition from pydolphinscheduler.tasks.dependent import And, Dependent, DependentItem, Or from pydolphinscheduler.tasks.shell import Shell diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/java_gateway.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/java_gateway.py index 85606382d..7b85902f9 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/java_gateway.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/java_gateway.py @@ -22,8 +22,8 @@ from typing import Any, Optional from py4j.java_collections import JavaMap from py4j.java_gateway import GatewayParameters, JavaGateway +from pydolphinscheduler import configuration from pydolphinscheduler.constants import JavaGatewayDefault -from pydolphinscheduler.core import configuration from pydolphinscheduler.exceptions import PyDSJavaGatewayException diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/__init__.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/__init__.py similarity index 70% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/__init__.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/__init__.py index c4479ddf2..42594002a 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/__init__.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/__init__.py @@ -17,13 +17,17 @@ """Init Side package, Side package keep object related to DolphinScheduler but not in the Core part.""" -from pydolphinscheduler.side.project import Project -from pydolphinscheduler.side.queue import Queue -from pydolphinscheduler.side.tenant import Tenant -from pydolphinscheduler.side.user import User -from pydolphinscheduler.side.worker_group import WorkerGroup +from pydolphinscheduler.models.base import Base +from pydolphinscheduler.models.base_side import BaseSide +from pydolphinscheduler.models.project import Project +from pydolphinscheduler.models.queue import Queue +from pydolphinscheduler.models.tenant import Tenant +from pydolphinscheduler.models.user import User +from pydolphinscheduler.models.worker_group import WorkerGroup __all__ = [ + "Base", + "BaseSide", "Project", "Tenant", "User", diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base.py similarity index 98% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base.py index 690351ab2..2647714af 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base.py @@ -19,7 +19,7 @@ from typing import Dict, Optional -# from pydolphinscheduler.side.user import User +# from pydolphinscheduler.models.user import User from pydolphinscheduler.utils.string import attr2camel diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base_side.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base_side.py similarity index 86% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base_side.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base_side.py index dca1f12c6..67ac88d96 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/core/base_side.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/base_side.py @@ -15,16 +15,16 @@ # specific language governing permissions and limitations # under the License. -"""Module for side object.""" +"""Module for models object.""" from typing import Optional -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base import Base +from pydolphinscheduler import configuration +from pydolphinscheduler.models import Base class BaseSide(Base): - """Base class for side object, it declare base behavior for them.""" + """Base class for models object, it declare base behavior for them.""" def __init__(self, name: str, description: Optional[str] = None): super().__init__(name, description) diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/project.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/project.py similarity index 93% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/project.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/project.py index 750e3b879..ad7221108 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/project.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/project.py @@ -19,9 +19,9 @@ from typing import Optional -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base_side import BaseSide +from pydolphinscheduler import configuration from pydolphinscheduler.java_gateway import launch_gateway +from pydolphinscheduler.models import BaseSide class Project(BaseSide): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/queue.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/queue.py similarity index 93% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/queue.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/queue.py index e7c68e15f..3f8f81d12 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/queue.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/queue.py @@ -19,9 +19,9 @@ from typing import Optional -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base_side import BaseSide +from pydolphinscheduler import configuration from pydolphinscheduler.java_gateway import gateway_result_checker, launch_gateway +from pydolphinscheduler.models import BaseSide class Queue(BaseSide): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/tenant.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/tenant.py similarity index 93% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/tenant.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/tenant.py index 6aaabfe12..148a8f652 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/tenant.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/tenant.py @@ -19,9 +19,9 @@ from typing import Optional -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base_side import BaseSide +from pydolphinscheduler import configuration from pydolphinscheduler.java_gateway import launch_gateway +from pydolphinscheduler.models import BaseSide class Tenant(BaseSide): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/user.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/user.py similarity index 94% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/user.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/user.py index 510e3a8b3..de2d8b159 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/user.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/user.py @@ -19,10 +19,9 @@ from typing import Optional -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.base_side import BaseSide +from pydolphinscheduler import configuration from pydolphinscheduler.java_gateway import launch_gateway -from pydolphinscheduler.side.tenant import Tenant +from pydolphinscheduler.models import BaseSide, Tenant class User(BaseSide): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/worker_group.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/worker_group.py similarity index 95% rename from dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/worker_group.py rename to dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/worker_group.py index ed50ec663..bc55eafc3 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/worker_group.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/worker_group.py @@ -19,7 +19,7 @@ from typing import Optional -from pydolphinscheduler.core.base_side import BaseSide +from pydolphinscheduler.models import BaseSide class WorkerGroup(BaseSide): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/condition.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/condition.py index 50aac251d..cb139f158 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/condition.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/condition.py @@ -20,9 +20,9 @@ from typing import Dict, List from pydolphinscheduler.constants import TaskType -from pydolphinscheduler.core.base import Base from pydolphinscheduler.core.task import Task from pydolphinscheduler.exceptions import PyDSParamException +from pydolphinscheduler.models.base import Base class Status(Base): diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/dependent.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/dependent.py index 7cff24c84..cc6d25b0a 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/dependent.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/dependent.py @@ -20,10 +20,10 @@ from typing import Dict, Optional, Tuple from pydolphinscheduler.constants import TaskType -from pydolphinscheduler.core.base import Base from pydolphinscheduler.core.task import Task from pydolphinscheduler.exceptions import PyDSJavaGatewayException, PyDSParamException from pydolphinscheduler.java_gateway import launch_gateway +from pydolphinscheduler.models.base import Base DEPENDENT_ALL_TASK_IN_WORKFLOW = "0" @@ -31,8 +31,8 @@ DEPENDENT_ALL_TASK_IN_WORKFLOW = "0" class DependentDate(str): """Constant of Dependent date value. - These values set according to Java server side, if you want to add and change it, - please change Java server side first. + These values set according to Java server models, if you want to add and change it, + please change Java server models first. """ # TODO Maybe we should add parent level to DependentDate for easy to use, such as diff --git a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/switch.py b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/switch.py index 0c9a2b82b..2206a06e4 100644 --- a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/switch.py +++ b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/tasks/switch.py @@ -20,9 +20,9 @@ from typing import Dict, Optional from pydolphinscheduler.constants import TaskType -from pydolphinscheduler.core.base import Base from pydolphinscheduler.core.task import Task from pydolphinscheduler.exceptions import PyDSParamException +from pydolphinscheduler.models.base import Base class SwitchBranch(Base): diff --git a/dolphinscheduler-python/pydolphinscheduler/tests/cli/test_config.py b/dolphinscheduler-python/pydolphinscheduler/tests/cli/test_config.py index d913277b2..516ad754a 100644 --- a/dolphinscheduler-python/pydolphinscheduler/tests/cli/test_config.py +++ b/dolphinscheduler-python/pydolphinscheduler/tests/cli/test_config.py @@ -23,7 +23,7 @@ from pathlib import Path import pytest from pydolphinscheduler.cli.commands import cli -from pydolphinscheduler.core.configuration import BUILD_IN_CONFIG_PATH, config_path +from pydolphinscheduler.configuration import BUILD_IN_CONFIG_PATH, config_path from tests.testing.cli import CliTestWrapper from tests.testing.constants import DEV_MODE, ENV_PYDS_HOME from tests.testing.file import get_file_content diff --git a/dolphinscheduler-python/pydolphinscheduler/tests/core/test_configuration.py b/dolphinscheduler-python/pydolphinscheduler/tests/core/test_configuration.py index c7e217a46..b9dc8cb65 100644 --- a/dolphinscheduler-python/pydolphinscheduler/tests/core/test_configuration.py +++ b/dolphinscheduler-python/pydolphinscheduler/tests/core/test_configuration.py @@ -24,8 +24,8 @@ from typing import Any import pytest -from pydolphinscheduler.core import configuration -from pydolphinscheduler.core.configuration import ( +from pydolphinscheduler import configuration +from pydolphinscheduler.configuration import ( BUILD_IN_CONFIG_PATH, config_path, get_single_config, diff --git a/dolphinscheduler-python/pydolphinscheduler/tests/core/test_process_definition.py b/dolphinscheduler-python/pydolphinscheduler/tests/core/test_process_definition.py index 5cb6dabdc..30445bfbf 100644 --- a/dolphinscheduler-python/pydolphinscheduler/tests/core/test_process_definition.py +++ b/dolphinscheduler-python/pydolphinscheduler/tests/core/test_process_definition.py @@ -24,11 +24,11 @@ from unittest.mock import patch import pytest from freezegun import freeze_time -from pydolphinscheduler.core import configuration +from pydolphinscheduler import configuration from pydolphinscheduler.core.process_definition import ProcessDefinition from pydolphinscheduler.core.resource import Resource from pydolphinscheduler.exceptions import PyDSParamException -from pydolphinscheduler.side import Project, Tenant, User +from pydolphinscheduler.models import Project, Tenant, User from pydolphinscheduler.tasks.switch import Branch, Default, Switch, SwitchCondition from pydolphinscheduler.utils.date import conv_to_schedule from tests.testing.task import Task diff --git a/dolphinscheduler-python/pydolphinscheduler/tests/testing/path.py b/dolphinscheduler-python/pydolphinscheduler/tests/testing/path.py index d1e520b3b..68d93c404 100644 --- a/dolphinscheduler-python/pydolphinscheduler/tests/testing/path.py +++ b/dolphinscheduler-python/pydolphinscheduler/tests/testing/path.py @@ -26,7 +26,7 @@ path_code_tasks = project_root.joinpath("src", "pydolphinscheduler", "tasks") path_example = project_root.joinpath("src", "pydolphinscheduler", "examples") path_doc_tasks = project_root.joinpath("docs", "source", "tasks") path_default_config_yaml = project_root.joinpath( - "src", "pydolphinscheduler", "core", "default_config.yaml" + "src", "pydolphinscheduler", "default_config.yaml" ) -- GitLab