This is an automated email from the ASF dual-hosted git repository.

zhongjiajie pushed a commit to branch 3.0.1-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git

commit 257187c5211c792793a5c49a75ce71bc622f1a8a
Author: Jiajie Zhong <[email protected]>
AuthorDate: Thu Jul 28 19:02:13 2022 +0800

    [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
    
    (cherry picked from commit 7a766cbcf2de82ea401ede11051b1059ef97919a)
---
 dolphinscheduler-python/pydolphinscheduler/DEVELOP.md      |  2 +-
 .../pydolphinscheduler/docs/source/api.rst                 |  2 +-
 .../pydolphinscheduler/docs/source/config.rst              |  2 +-
 dolphinscheduler-python/pydolphinscheduler/setup.py        |  2 +-
 .../src/pydolphinscheduler/cli/commands.py                 |  2 +-
 .../src/pydolphinscheduler/{core => }/configuration.py     |  0
 .../src/pydolphinscheduler/core/__init__.py                |  2 +-
 .../src/pydolphinscheduler/core/process_definition.py      | 13 ++++++-------
 .../src/pydolphinscheduler/core/resource.py                |  2 +-
 .../pydolphinscheduler/src/pydolphinscheduler/core/task.py |  4 ++--
 .../src/pydolphinscheduler/{core => }/default_config.yaml  |  2 +-
 .../pydolphinscheduler/examples/task_dependent_example.py  |  2 +-
 .../src/pydolphinscheduler/java_gateway.py                 |  2 +-
 .../src/pydolphinscheduler/{side => models}/__init__.py    | 14 +++++++++-----
 .../src/pydolphinscheduler/{core => models}/base.py        |  2 +-
 .../src/pydolphinscheduler/{core => models}/base_side.py   |  8 ++++----
 .../src/pydolphinscheduler/{side => models}/project.py     |  4 ++--
 .../src/pydolphinscheduler/{side => models}/queue.py       |  4 ++--
 .../src/pydolphinscheduler/{side => models}/tenant.py      |  4 ++--
 .../src/pydolphinscheduler/{side => models}/user.py        |  5 ++---
 .../pydolphinscheduler/{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 +-
 .../pydolphinscheduler/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(-)

diff --git a/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md 
b/dolphinscheduler-python/pydolphinscheduler/DEVELOP.md
index 926a467282..9972094d60 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 f2dd4e5c57..b170b6f870 100644
--- a/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst
+++ b/dolphinscheduler-python/pydolphinscheduler/docs/source/api.rst
@@ -27,7 +27,7 @@ Core
 Models
 ------
 
-.. 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 feb147a92e..29a143d713 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 651dfba5b0..2a1291548f 100644
--- a/dolphinscheduler-python/pydolphinscheduler/setup.py
+++ b/dolphinscheduler-python/pydolphinscheduler/setup.py
@@ -151,7 +151,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 f1d59dbbd7..d78e503dbb 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
 
 import pydolphinscheduler
-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 7497d1f289..b997c3e9de 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 63e080899d..69dcbc145d 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 bd4ffd4bd7..a3aab81d17 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 90c0e89087..4d4e67e323 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 5541af7b79..98d7b99fdc 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 88d6ea2322..db53bcc9f3 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 85606382dd..7b85902f9a 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 014da11b84..b289954caa 100644
--- 
a/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/side/__init__.py
+++ 
b/dolphinscheduler-python/pydolphinscheduler/src/pydolphinscheduler/models/__init__.py
@@ -17,13 +17,17 @@
 
 """Init Models package, keeping object related to DolphinScheduler covert from 
Java Gateway Service."""
 
-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 690351ab2f..2647714af0 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 dca1f12c6c..67ac88d96b 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 750e3b8793..ad7221108a 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 e7c68e15fd..3f8f81d126 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 6aaabfe129..148a8f6521 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 510e3a8b36..de2d8b159a 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 ed50ec6630..bc55eafc34 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 50aac251d8..cb139f1587 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 7cff24c841..cc6d25b0a2 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 05ac9c1329..35eece89b6 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 d913277b2e..516ad754a2 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 c7e217a46f..b9dc8cb656 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 5cb6dabdc0..30445bfbf3 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 d1e520b3bd..68d93c404b 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"
 )
 
 

Reply via email to