Skip to content

Commit 1347a8f

Browse files
authored
[chore] Separate Python API into another repository (apache#12779)
Currently, our Python API code is a module in apache/dolphinscheduler codebase, each time users change Python API code, they need to run all requests CI check for dolphinscheduler and Python API, But if the user does only change Python code, it could be merged if Python API CI pass and do not dependent on others CI. Besides, we release Python API as the same version of dolphinscheduler. It is easy for user to match Python API version. But when Python API does not change any code, but dolphinscheduler release a bugfix version, Python API has to release the new version to match dolphinscheduler. This happened when we released Python API 2.0.6 and 2.0.7. 2.0.6 and 2.0.7 is bugfix version, and Python API does not change any code, so the PyPI package is the same. Separate Python API also makes our code more sense, we will have more distinguished code in dolphinscheduler and Python API new repository. Have separate issue tracker and changelog for information to users. ref PR in other repository: apache/dolphinscheduler-sdk-python#1 see more detail in mail thread: https://lists.apache.org/thread/4z7l5l54c4d81smjlk1n8nq380p9f0oo
1 parent 72e50b2 commit 1347a8f

File tree

239 files changed

+19
-20447
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

239 files changed

+19
-20447
lines changed

dolphinscheduler-python/pydolphinscheduler/.flake8 .flake8

-12
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,10 @@
1919
max-line-length = 110
2020
exclude =
2121
.git,
22-
__pycache__,
23-
.pytest_cache,
24-
*.egg-info,
25-
docs/source/conf.py
26-
old,
27-
build,
28-
dist,
29-
htmlcov,
30-
.tox,
3122
dist,
3223
ignore =
3324
# It's clear and not need to add docstring
3425
D107, # D107: Don't require docstrings on __init__
3526
D105, # D105: Missing docstring in magic method
3627
# Conflict to Black
3728
W503 # W503: Line breaks before binary operators
38-
per-file-ignores =
39-
*/pydolphinscheduler/side/__init__.py:F401
40-
*/pydolphinscheduler/tasks/__init__.py:F401

.github/CODEOWNERS

-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
/dolphinscheduler-task-plugin/ @caishunfeng @SbloodyS @zhuangchong
3939
/dolphinscheduler-tools/ @caishunfeng @SbloodyS @zhongjiajie @EricGao888
4040
/script/ @caishunfeng @SbloodyS @zhongjiajie @EricGao888
41-
/dolphinscheduler-python/ @zhongjiajie
4241
/dolphinscheduler-ui/ @songjianet @Amy0104
4342
/docs/ @zhongjiajie @Tianqi-Dotes @EricGao888
4443
/licenses/ @kezhenxu94 @zhongjiajie

.github/actions/labeler/labeler.yml

-4
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@
1515
# limitations under the License.
1616
#
1717

18-
Python:
19-
- any: ['dolphinscheduler-python/**/*']
20-
2118
backend:
2219
- 'dolphinscheduler-alert/**/*'
2320
- 'dolphinscheduler-api/**/*'
@@ -40,7 +37,6 @@ backend:
4037

4138
document:
4239
- 'docs/**/*'
43-
- 'dolphinscheduler-python/pydolphinscheduler/docs/**/*'
4440

4541
CI&CD:
4642
- any: ['.github/**/*']

.github/workflows/py-ci.yml

-205
This file was deleted.

.github/workflows/unit-test.yml

-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ on:
2323
paths-ignore:
2424
- '**/*.md'
2525
- 'dolphinscheduler-ui'
26-
- 'dolphinscheduler-python/pydolphinscheduler'
2726
branches:
2827
- dev
2928

.gitignore

-15
Original file line numberDiff line numberDiff line change
@@ -50,18 +50,3 @@ dolphinscheduler-common/test
5050
dolphinscheduler-worker/logs
5151
dolphinscheduler-master/logs
5252
dolphinscheduler-api/logs
53-
54-
# ------------------
55-
# pydolphinscheduler
56-
# ------------------
57-
# Cache
58-
__pycache__/
59-
.tox/
60-
61-
# Build
62-
build/
63-
*egg-info/
64-
65-
# Test coverage
66-
.coverage
67-
htmlcov/

.pre-commit-config.yaml

-5
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,6 @@ repos:
4141
'flake8-docstrings>=1.6',
4242
'flake8-black>=0.2',
4343
]
44-
# pre-commit run in the root, so we have to point out the full path of configuration
45-
args: [
46-
--config,
47-
dolphinscheduler-python/pydolphinscheduler/.flake8
48-
]
4944
- repo: https://github.com/pycqa/autoflake
5045
rev: v1.4
5146
hooks:

README.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ Apache DolphinScheduler is the modern data workflow orchestration platform with
1919

2020
The key features for DolphinScheduler are as follows:
2121
- Easy to deploy, we provide 4 ways to deploy, such as Standalone deployment,Cluster deployment,Docker / Kubernetes deployment and Rainbond deployment
22-
- Easy to use, there are 3 ways to create workflows:
22+
- Easy to use, there are four ways to create workflows:
2323
- Visually, create tasks by dragging and dropping tasks
24-
- Creating workflows by PyDolphinScheduler(Python way)
25-
- Creating workflows through Open API
24+
- [PyDolphinScheduler](https://dolphinscheduler.apache.org/python/dev/index.html), Creating workflows via Python API, aka workflow-as-code
25+
- Yaml definition, mapping yaml into workflow(have to install PyDolphinScheduler currently)
26+
- Open API, Creating workflows
2627

2728
- Highly Reliable,
2829
DolphinScheduler uses a decentralized multi-master and multi-worker architecture, which naturally supports horizontal scaling and high availability

docs/docs/en/contribute/release/release-post.md

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Release Post
22

33
We still have some publish task to do after we send the announcement mail, currently we have to publish Docker images to
4-
Docker Hub and also publish pydolphinscheduler to PyPI.
4+
Docker Hub.
55

66
## Publish Docker Image
77

@@ -20,11 +20,6 @@ We could reuse the main command the CI run and publish our Docker images to Dock
2020
-Pdocker,release
2121
```
2222

23-
## Publish pydolphinscheduler to PyPI
24-
25-
Python API need to release to PyPI for easier download and use, you can see more detail in [Python API release](https://github.com/apache/dolphinscheduler/blob/dev/dolphinscheduler-python/pydolphinscheduler/RELEASE.md#to-pypi)
26-
to finish PyPI release.
27-
2823
## Get All Contributors
2924

3025
You might need all contributors in current release when you want to publish the release news or announcement, you could

docs/docs/en/contribute/release/release-prepare.md

-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ For example, to release `x.y.z`, the following updates are required:
2323
- `deploy/kubernetes/dolphinscheduler`:
2424
- `Chart.yaml`: `appVersion` needs to be updated to x.y.z (`version` is helm chart version,incremented and different from x.y.z)
2525
- `values.yaml`: `image.tag` needs to be updated to x.y.z
26-
- `dolphinscheduler-python/pydolphinscheduler/setup.py`: change `version` to x.y.z
2726
- Version in the docs:
2827
- Change the placeholder `<version>`(except `pom`) to the `x.y.z` in directory `docs`
2928
- Add new history version

0 commit comments

Comments
 (0)